我一直在使用 Qt 在个人项目中做一些有趣的事情。我不是这方面的专家,所以如果这是一个愚蠢的问题(我猜我找不到任何有用的东西),请随时杀了我。
无论如何,我在 OSX 中,通常我使用带有以下命令的 shell 脚本针对静态版本的 Qt 编译最终版本:
cd "project folder...";
PATH=/Users/TCB13/(...)/qt-source/bin:$PATH; --> Path to my static QT.
export PATH;
qmake -config release;
make;
make clean;
到目前为止,如果我将编译后的二进制文件移动到另一台没有安装 Qt 的计算机上,一切正常!;)
昨天我开始玩一个公司提供的动态库,我已经将 dylib 包含在我的 .pro 文件中,如下所示:(我在项目文件夹中有 dylib 的副本)
#macx: LIBS += -L$$PWD/ -lwpsapi
#INCLUDEPATH += $$PWD/
#DEPENDPATH += $$PWD/
当我“静态”编译它(使用上面的命令)并在另一台计算机上运行它时,我得到:
dyld: Library not loaded: @executable_path/libwpsapi.dylib
Referenced from: /Users/TCB13/Desktop/dude111
Reason: image not found
Trace/BPT trap: 5
我注意到无论是否包含 dylib,我编译的二进制文件的大小都是相同的,所以,我用谷歌搜索了如何包含和外部 lib,有些人说我需要在我的 .pro 文件中添加“CONFIG += static”。我做到了,文件的大小增加了,但我仍然遇到同样的错误。
希望可以有人帮帮我。