我正在使用boost.build编译一个引用CGNS库的c++代码,但是在使用boost.build执行此操作时遇到了一些困难。CGNS编译为一个库,其中包含一个用于平台的文件夹,例如用于linux构建的path/LINUX。我希望在构建中包含库路径/LINUX/libcgns.a。我希望这是跨平台的,以便LINUX目录用于LINUX构建,而WIN目录用于WIN构建(我相信这是有平台条件的)。
我设法包含了库的头文件,但是我该如何处理库的条件包含呢?我的简单测试Jamroot.jam,其中main.cpp只是CGNS文档中的一个示例。
exe CGNSTest
: src/main.cpp
: <include>../Dependencies/cgnslib ;另外,我想将CGNS库构建到我的二进制文件中(静态参考?)
发布于 2010-09-27 22:38:38
使用两个引用,http://www.highscore.de/cpp/boostbuild/和http://www.boost.org/doc/tools/build/doc/userman.pdf,我创建了一些可以工作的东西,但它可能不是理想的。
lib cgns
: # sources
: # requirements
<name>cgns
<target-os>linux:<search>../Dependencies/cgnslib/LINUX
<target-os>windows:<search>../Dependencies/cgnslib/WIN32
: # default-build
: # usage-requirements
<include>./../Dependencies/cgnslib ;
alias static_libraries : cgns : <link>static ;
exe CGNSTest
: src/main.cpp static_libraries
: <target-os>windows:<linkflags>/NODEFAULTLIB:MSVCRTD ;https://stackoverflow.com/questions/3804570
复制相似问题