我正在尝试安装https://www.programcreek.com/java-api-examples/index.php?api=com.ibatis.common.jdbc.ScriptRunner并遵循Windows的安装指南。
在步骤cmake-gui.exe
中,我的cmake找不到安装的Boost。
将ismrmrd添加到CMakeLists.txt
后,结果变得很有趣。
有什么想法吗?
UPDATE 8/21
感谢和vre
现在我更改为提高1.66,但仍然没有运气。
新的屏幕截图显示FindBoost现在没有抱怨。 但是仍然没有发现任何提振。 user1234567
UPDATE 8/22
添加后
cmake_policy(SET CMP0074 NEW)
和
由的建议将 set(Boost_USE_STATIC_LIBS ON) set(Boost_USE_MULTITHREADED ON) find_package(Boost REQUIRED system filesystem) include_directories(${Boost_INCLUDE_DIRS})
target_link_libraries(ismrmrd ${Boost_LIBRARIES})
改成CMakeLists.txt
产生的错误成为此屏幕截图 vre
答案 0 :(得分:1)
由于渴望评论,我尝试提出一个食谱:
仅使用Boost标头/静态库所需的命令是:
set(Boost_ADDITIONAL_VERSIONS 1.66.0 1.66)
set(BOOST_ROOT "C:/local/boost_1_66_0")
set(Boost_USE_STATIC_LIBS ON)
set(Boost_USE_MULTITHREADED ON)
仅使用标头库仅使用
find_package(Boost)
否则,在COMPONENTS关键字之后命名要使用的组件(库)并使用
find_package(Boost COMPONENTS <e.g. filesystem system ...>)
if (Boost_FOUND)
include_directories(${Boost_INCLUDE_DIRS})
add_definitions( "-DHAS_BOOST" )
endif()
稍后在调用中仅引用Header Boost引用导入的目标(库)
target_link_libraries(yourproject Boost::boost)
或在调用中用于命名库组件
target_link_libraries(yourproject ${Boost_LIBRARIES})
在对有关Boost和Boost组件的CMakeLists.txt进行更改时,请务必始终删除构建目录中的CMakeCache.txt文件,因为它可能会缓存以前的CMake运行的值。