代码之家  ›  专栏  ›  技术社区  ›  Paul Biggar

在OS X中针对不同的SDK运行应用程序?

  •  6
  • Paul Biggar  · 技术社区  · 14 年前

    总结

    我想针对10.5库运行我的交叉编译应用程序。是否有一个环境变量允许这项工作?

    较长版本

    我在10.6主机上交叉编译了我的OS X C++应用程序的10.5个目标。它编译得很好。编译后的应用程序与类似 /usr/lib/libstdc++.6.dylib . 当我在系统上运行它时,它将使用库的“主机”版本,即10.6。我想用10.5版本测试它,这些版本都包含在`/developer/sdks/macosx10.5.sdk目录中。我该怎么做?

    我尝试了各种各样的Dyd_-Library_-Path、Dyd_-Root_-Path等,比如 documented in the manual 但我还没能让它发挥作用。

    3 回复  |  直到 14 年前
        1
  •  3
  •   Kirk Kelsey    14 年前

    install_name_tool -change /usr/lib/libstdc++.6.dylib @rpath/libstdc++.6.dylib /path/to/executable
    install_name_tool -add_rpath /Developer/SDKs/MacOSX10.5.sdk/usr/lib /path/to/executable
    

    otool -L