3

嗨,我有以下项目 hirarcy:
-Top
------lib1
----------Jamfile
------lib2
----------Jamfile
----- -果酱

libs:lib1 和 lib2 都是静态库(.a),它们的 Jamfile 包含以下命令:

lib $(library) : [ glob *.cpp ] : <link>static ;

现在在 Jamroot 级别,我必须通过组合以上两个静态库来创建一个共享库(.so):lib1.a 和 lib2.a 应该组合并形成一个 libmain.so。

你能告诉我如何在我的 Jamroot.jam 文件中编写所需的 bjam 语句来实现上述目的吗?

4

2 回答 2

0

你有没有尝试过这样的事情?

shared-lib main
  : /lib1//lib1
    /lib2//lib2
  : <link>shared
    <cxxflags>-fPIC
  ;
于 2014-12-30T05:06:20.177 回答
0

我为 Android 库执行此操作。诀窍是/<link>static在每个库之后添加。

lib shared-library
  :
    /lib1//lib1/<link>static
    /lib2//lib2/<link>static
  :
    <link>shared
  ;
于 2015-10-29T16:56:55.180 回答