我正在使用 Boost Log 2.0r862 在 Mac OSX 10.8.2 上构建 Boost 1.53.0,并将其安装到假根目录以保持 /usr/lib* 和 /opt/lib* 干净。我构建并安装了 Boost并使用
This build and install 成功./bootstrap --prefix=/path/to/myfakerootdir
安装了库;./b2 install
在我的项目上运行 cmake 时,它会正确检测库包含和 lib 目录。然而,在它完成构建并尝试运行我得到的可执行文件之后
dyld: Library not loaded: libboost_system.dylib
Referenced from: /Users/brad/dev/strata/strataextract/build/Debug/StrataExtractUnitTests
Reason: image not found
我研究过的一些可能的问题包括:
1.使用 otool 手动更改可执行文件(虽然这似乎是一个非常“hacky”的解决方案)
2.在Github Macports Overlay上使用修改后的端口文件(虽然提供的当前版本太旧了对于我的项目。3.
关于 Boost 的多个构建教程,不幸的是,大多数引用 Bjam,据我了解,这不再是好的做法。
我似乎记得类似的情况,需要我将相对路径设置为 false,但我不确定我是如何会用 Boost + bjam 做到这一点。