【问题标题】:xcode : linking with "Current" version of a frameworkxcode:与框架的“当前”版本链接
【发布时间】:2009-12-03 22:06:40
【问题描述】:

我正在编译一个依赖于另一个框架的框架。 将我的框架分发给其他用户时遇到麻烦,这些用户的版本不一定与我的机器上的版本相同。 似乎 xcode 为我系统上安装的最后一个版本创建了一个“硬链接”。 我的框架上的“otool -L”报告了一个链接:

gecode.framework/Versions/19/gecode(兼容版本19.0.0,当前版本19.0.0)

一个可能(并且有效)的解决方案是使用 install_name_tool 命令更改链接框架的路径:

`install_name_tool -change gecode.framework/Versions/18/gecode` gecode.framework/Versions/Current/gecode my-constraints-framework

但是有没有一种简单的方法来告诉 xcode 在构建阶段直接链接到框架的“当前”版本?

【问题讨论】:

    标签: xcode frameworks


    【解决方案1】:

    框架的“兼容版本”不应因兼容版本而改变。如果“18”更改为“19”,则表示新框架不兼容:链接到“18”的代码在不重新编译/修改的情况下无法使用“19”。

    在 Mac OS 上解决此问题的常用方法是将框架复制到需要它的包中,并使用 @executable_path 链接到它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多