我有(大致)以下 CMakeLists.txt
project(Test)
set(SOURCE
123.cpp
456.cpp )
find_package(Boost COMPONENTS
unit_test_framework REQUIRED)
include_directories(${Boost_INCLUDE_DIRS})
link_directories(${Boost_LIBRARY_DIRS})
message("${Boost_INCLUDE_DIRS}")
add_executable(Tests ${SOURCE})
生成的消息
message("${Boost_INCLUDE_DIRS}")
是
C:\boost_1_40_0
当我生成 visual studio 2008 项目文件时,一切正常...除了项目属性中的 C/C++ 部分的“附加包含目录”中没有任何内容。当我构建时,我得到 p>
fatal error C1083: Cannot open include file: 'boost/test/unit_test.hpp': No such file or directory
但是,文件就在那里,在 C:\boost_1_40_0 下。还有什么事要做吗?
现在我在全局 c++ 目录中添加了 boost,但我想知道是否有这样做的原因?
谢谢!
最佳答案
好的... include_directories 和 link_directories 需要在 add_executable 之后...
关于c++ - 如何在 cmake 生成的 visual studio 项目中包含目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1447423/