gpt4 book ai didi

c++ - 使用 Cmake,如何防止库源包含在我的 IDE 中?

转载 作者:行者123 更新时间:2023-11-28 05:53:01 26 4
gpt4 key购买 nike

在我的项目中使用一堆不同的库(来自 GitHub 源代码,未预编译),我将它们添加到我的目标中,就像这样在我的根 CMakeLists.txt 文件中:

add_subdirectory(lib/glew-1.13.0/build/cmake)
include_directories(SYSTEM ${PROJECT_SOURCE_DIR}/lib/glew-1.13.0/include/)

...

target_link_libraries(MyApp glew ${GLEW_LIBRARIES} ... )

但是,您可以从下面的屏幕截图中看到,Xcode 包含了我项目中这些库的所有源代码,这形成了一个非常长的列表,我必须滚动才能找到我的代码。

我已经在 add_subdirectory 命令中尝试了 EXCLUDE_FROM_ALL 标志,它从我的 Xcode 项目中删除了库源,但是我无法编译我的项目,因为 Xcode 没有完全编译库。

此外,Xcode 会从我并不真正关心的库中向我发出大量警告。将 SYSTEM 标志与 include_directories 命令一起使用并不能解决问题。

解决这个问题的最佳方法是什么?我是否应该将我的库编译为构建过程中一个完全独立的部分,而不是将它们与我的可执行文件一起编译?

Xcode Sources

最佳答案

我不确定它是如何工作的,但试试这个:

打开根 CMakeLists.txt 中的 USE_FOLDERS

set_property(GLOBAL PROPERTY USE_FOLDERS ON)

然后在添加所有项目后,在所有第三方库上设置 FOLDER 目标属性:

set_property(TARGET target1 target2 ...
PROPERTY FOLDER "ThirdPartyLibs")

关于c++ - 使用 Cmake,如何防止库源包含在我的 IDE 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34822093/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com