我必须在“通常的”目录树之外构建 Boost(即,/custom/dir
而不是/usr
),这不是什么大问题:只需传递--prefix=/custom/path
给./runscript.sh
/ ./bjam
,就可以了。
或者我是这么想的。
问题是一些 Boost 库相互依赖,并且 - 使用通过./bootstrap.sh
/的默认构建过程./bjam
- 似乎该--prefix
路径没有添加到 Boost 库的库搜索路径中,即没有-Wl,-rpath
应用。这意味着依赖于其他 Boost 库的 Boost 库在运行时无法找到它们。
我的应用程序 - 链接那些/custom/path
Boost 库 - 在阶段已经失败,./configure
因为libboost_filesystem.so
cannot find libboost_system.so
,即使我传递-Wl,-rpath=/custom/path/boost/lib
给我自己的编译器行(即 Boost 库的正确路径,我仔细检查了libboost_system.so
那里)。
现在,为了避免像设置这样的笨拙方法LD_LIBRARY_PATH
,我想以某种方式构建 Boost,以便所有 Boost 库都具有编译到其中的其他 Boost 库的正确搜索路径。但是,我找不到合适的程序。有谁能够帮我?