使用Boost.build包含库

时间:2010-09-27 14:03:50

标签: c++ boost-build cgns

我正在使用boost.build来编译引用库{c}的c ++代码,但是使用boost.build这样做有些困难。 CGNS编译到一个库,带有一个平台文件夹,例如[build] / LINUX for linux build。我想在构建中包含库[path] /LINUX/libcgns.a。我希望这是跨平台的,所以LINUX目录引用LINUX构建,WIN目录用于WIN构建(我相信有平台条件)。

我设法包含库头文件,但是如何进行库的条件包含?我的简单测试Jamroot.jam,其中main.cpp只是CGNS文档的一个例子。

exe CGNSTest 
    : src/main.cpp 
    : <include>../Dependencies/cgnslib ;

另外,我想在CGNS库中构建我的二进制文件(静态引用?)

1 个答案:

答案 0 :(得分:1)

使用两个引用,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 ;