【问题标题】:Where does mac osx app require dependent libraries?mac osx app在哪里需要依赖库?
【发布时间】:2014-09-08 12:56:34
【问题描述】:

我在mac下建了一个Qt项目,但是执行有问题。

它的依赖有几个 dylib 。

在构建项目时,make 工具只要求其中一个库(例如 lib.1.0.0,dylib out of lib.1.dylib, lib.1.0.dylib, lib.1.0.0.dylib, lib.1.0.0.0.dylib) - 所以我知道把它放在 .pro 文件中

有些看起来像链接 - 但并不总是 lib 版本看起来像作为依赖项所需的文件。

但是在运行时,我不知道我需要哪个 dylib 以及放在哪里。 我试图将所有 4 个 lib 版本放在创建应用程序的文件夹中 - 项目文件夹 - 但应用程序没有执行。

在 Linux 中做了同样的事情,我不得不将库放在路径上设置的位置 - 例如 /usr/local/libs

mac 喜欢它的库(共享库?)在哪里运行?

【问题讨论】:

  • developer.apple.com/library/mac/documentation/corefoundation/… 我认为你真的需要阅读一些 Apple 文档...
  • 我做到了...但是谢谢...实际上比 Linux 更容易,将库放在 /usr/local/lib/ 中 - 我很困惑,因为 lib 文件夹不存在 - 但曾经创建它们,lib文件被识别......我现在想知道我的问题该怎么办,哈哈

标签: macos qt shared-libraries execute


【解决方案1】:

您应该阅读这份关于部署 Qt 应用程序的文档。它会回答你的问题。将您的库移动到系统库路径通常不是一个好主意。

http://qt-project.org/doc/qt-5/macosx-deployment.html

总结一下,尽管您需要更改二进制文件以使用 otool 命令告诉它们库在哪里。

【讨论】:

    猜你喜欢
    • 2012-02-13
    • 2012-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    • 2012-09-18
    • 1970-01-01
    • 2020-03-09
    相关资源
    最近更新 更多