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