首页 > 解决方案 > 在 Windows 10 上为 CMake 设置 3rd 方库环境

问题描述

我在安装用于 CMake 项目 (C++) 的第三方库的“正确”方式时遇到问题。大多数时候,我并没有为这些东西而烦恼,只是在我CMakeLists.txt的 .

我最终想要有一些我可以输入的东西,例如,find_package(SDL2 REQUIRED)在一个项目中,图书馆就在那里,找到并且完美地工作。

我现在拥有的是我有一个文件夹C:\CMakeLibs,其中--install包含所有 3rd 方库,例如C:\CMakeLibs\SDL2,其中有cmake, include,lib等文件夹。然后我将文件夹包含C:\CMakeLibs\SDL2CMAKE_PREFIX_PATH系统环境变量中,以便 CMake 可以找到SDL2Config.cmake文件,不需要任何FindSDL2.cmake. 这样,我只需键入以下代码,它就可以直接工作,而且对于开源项目来说可能也是最便携的。

find_package(SDL2 REQUIRED)
add_executable(app main.cpp)
target_link_libraries(app PRIVATE SDL2::SDL2main SDL2::SDL2-static)

我唯一担心的是我必须手动将任何新库添加到CMAKE_PREFIX_PATH. 我只想拥有C:\CMakeLibs我的CMAKE_PREFIX_PATH一切,一切正常。从技术上讲,我可以--install直接访问这些库,C:\CMakeLibs但我担心将所有不同的文件放在一个共享文件夹中时会出现任何可能的不兼容性,这感觉不是最好的解决方案。

我知道这个问题可能是“没有最佳答案/基于意见”的问题之一。自从我开始使用 CMake 以来,我已经在互联网上寻找解决方案很长时间了,所以我决定在这里写这篇文章。我希望我清楚地描述了我的问题,英语不是我的母语。

标签: c++windowscmakewindows-10

解决方案


推荐阅读