You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在CMake+SFML项目中通过VCPKG接入tmxlite及报错求助

已确定方案(Alexander Neumann)
  • 在任意目录下创建文件Findtmxlite.cmake
  • 写入以下路径配置(请根据自身环境调整路径):
#Findtmxlite.cmake
set(VCPKG_PATH "${USER_PROFILE}/vcpkg")
set(VCPKG_INCLUDE_DIR "${VCPKG_PATH}/installed/${VCPKG_TARGET_TRIPLET}/include")
set(VCPKG_LIBRARY_DIR "${VCPKG_PATH}/installed/${VCPKG_TARGET_TRIPLET}/lib")

# 设置tmxlite搜索路径
# 查找tmxlite头文件路径
find_path(tmxlite_INCLUDE_DIR NAMES tmxlite/Map.hpp PATHS VCPKG_INCLUDE_DIR)

# 查找tmxlite库文件
find_library(tmxlite_LIBRARY NAMES tmxlite PATHS VCPKG_LIBRARY_DIR)

# 创建tmxlite的导入目标
add_library(tmxlite INTERFACE)

# 指定tmxlite头文件路径
target_include_directories(tmxlite INTERFACE ${tmxlite_INCLUDE_DIR})

# 将tmxlite库链接到目标
target_link_libraries(tmxlite INTERFACE ${tmxlite_LIBRARY})
  • 在项目的CMakeLists.txt中添加以下代码(替换为Findtmxlite.cmake所在目录的实际路径):
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "path/to/Findtmxlite.cmake/dir")

完成上述步骤后,即可在项目中调用tmxlite:

find_package(tmxlite REQUIRED)
add_executable (tester "main.cpp")
target_link_libraries(tester PRIVATE tmxlite)

问题求助(tmxlite开发者)

错误详情:

CMake错误位于C:/Users/Agenteec/vcpkg/scripts/buildsystems/vcpkg.cmake:843 (_find_package):
由于未在CMAKE_MODULE_PATH中提供"Findtmxlite.cmake",本项目请求CMake查找tmxlite提供的包配置文件,但CMake未找到。

未找到tmxlite提供的、名称为以下任意一种的包配置文件:
tmxliteConfig.cmake
tmxlite-config.cmake

请将tmxlite的安装前缀添加到CMAKE_PREFIX_PATH,或者将"tmxlite_DIR"设置为包含上述任一文件的目录。如果tmxlite提供单独的开发包或SDK,请确保已安装。

环境信息:

Vcpkg已安装包列表:

  • tmxlite:x64-windows 1.3.0#1 一款轻量级C++14 TMX地图解析库
  • tmxlite:x86-windows 1.3.0#1 一款轻量级C++14 TMX地图解析库

已尝试的无效方法:

# 方法1
find_package(tmxlite REQUIRED)
add_executable (tester "main.cpp")
target_link_libraries(tester PRIVATE tmxlite)
# 方法2
set(VCPKG_PATH "${USER_PROFILE}/vcpkg")
set(VCPKG_INCLUDE_DIR "${VCPKG_PATH}/installed/${VCPKG_TARGET_TRIPLET}/include")
set(VCPKG_LIBRARY_DIR "${VCPKG_PATH}/installed/${VCPKG_TARGET_TRIPLET}/lib")
add_executable (tester "main.cpp")
target_link_libraries(project PRIVATE ${VCPKG_LIBRARY_DIR}/tmxlite.lib)
# 方法3
set(VCPKG_PATH "${USER_PROFILE}/vcpkg")
set(VCPKG_INCLUDE_DIR "${VCPKG_PATH}/installed/${VCPKG_TARGET_TRIPLET}/include")
set(VCPKG_LIBRARY_DIR "${VCPKG_PATH}/installed/${VCPKG_TARGET_TRIPLET}/lib")
find_package(tmxlite REQUIRED HINTS "${VCPKG_PATH}/installed/${VCPKG_TARGET_TRIPLET}")
add_executable (tester "main.cpp")
target_link_libraries(project PRIVATE tmxlite)

内容的提问来源于stack exchange,提问作者Agenteec

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 10:51:34