【问题标题】:Embed boost binaries to xcode project将 boost 二进制文件嵌入到 xcode 项目中
【发布时间】:2017-09-01 00:12:19
【问题描述】:

我目前正在使用 boost 库在 OSX 中开发 C++14 项目。

我能够编译和链接项目,包括。 boost 库。

但是,在尝试在另一台计算机上运行可执行文件时,我需要先安装 boost.. 使用 brew install boost

是否可以通过某种方式移除这种依赖关系?

【问题讨论】:

  • 静态链接-lboost_whatever而不是libboost_whatever.a
  • @HenriMenke 我删除了 -lboost 标志并添加到 Build Phases -> Link Binary With Libraries。 .a 文件.. 它在本地工作,但在另一台 Mac 上我仍然收到这样的错误:dyld: Library not loaded: /usr/local/opt/boost/lib/libboost_date_time.dylib
  • 这意味着您没有.a 文件静态链接,但仍然是动态链接。仔细检查您的构建设置。

标签: c++ xcode macos boost


【解决方案1】:

好的,所以我设法解决了这个问题。首先,我尝试将 .a 文件(而不是 dylib 文件)引用到项目中。

但它似乎仍然没有工作,只有当我改变路径时 libboost_X.aBuild Phases -> Other Linker Flags 中的完整路径 /usr/foo/bar/libboost_X.a 似乎解决了问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-02-08
    • 2015-01-15
    • 2015-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-22
    相关资源
    最近更新 更多