PyQt 使用 pyrcc4 编译 .qrc 文件以在 OSX 下的 Maya 中使用

Posted

技术标签:

【中文标题】PyQt 使用 pyrcc4 编译 .qrc 文件以在 OSX 下的 Maya 中使用【英文标题】:PyQt Compiling .qrc file with pyrcc4 for use in Maya under OSX 【发布时间】:2012-05-20 07:28:58 【问题描述】:

我在编译资源文件(文件名为 resource.qrc)时遇到了很多麻烦。我正在使用 PyQt 为 Maya 制作用户界面,并且在 OSX 10.6.8 中进行。 PyQt、Qt、Sip 工作正常。我原来用的是windows,在win7下编译了我的资源文件。

我设法在这里找到了 pyrcc4 可执行文件

/Applications/Autodesk/maya2013/Maya.app/Contents/Frameworks/Python.framework/Versions/2.6/bin/pyrcc4

这里

/usr/local/bin/pyrcc4

但是当我使用这个可执行文件时,我得到了以下错误

dyld: Library not loaded: libQtCore.4.dylib
Referenced from: /Applications/Autodesk/maya2013/Maya.app/Contents/Frameworks/Python.framework/Versions/2.6/bin/pyrcc4
Reason: image not found
Trace/BPT trap

我是否使用了正确的 pyrcc4 可执行文件?我在网上找不到任何关于在 OSX 下编译 .qrc 文件的文档,所以我不确定。如果它是正确的 pyrcc4,我该如何纠正上述问题?有没有另一种方法可以在 OSX 下编译 .qrc 文件?

我还在 /usr/local/Trolltech/Qt-4.7.1/bin/ 下找到了可执行的 rcc。用 rcc 编译在 C++ 中编译成功。

任何帮助将不胜感激

【问题讨论】:

【参考方案1】:

pyrcc4 似乎找不到 Qt 库。

尝试找到库所在的目录并将LD_LIBRARY_PATH变量设置为指向它:

export LD_LIBRARY_PATH="/path/to/qt/libs"

或直接使用:

LD_LIBRARY_PATH="/path/to/qt/libs" pyrcc4 <inputs>

【讨论】:

您好,感谢您的回复。我一直无法找到这些库,如果可能的话,至少 libQtCore.4.dylib 在我的机器上似乎不存在。 您好,我无法找到库,因为 Qt 配置了打开的框架。卸载并重新安装后,在没有框架的情况下配置 Qt,我能够成功运行 pyrcc4 并编译 qrc 文件。欢呼

以上是关于PyQt 使用 pyrcc4 编译 .qrc 文件以在 OSX 下的 Maya 中使用的主要内容,如果未能解决你的问题,请参考以下文章

pyqt5学习——pyqt5中.qrc资源文件的创建与编写

PYQT资源,冻结程序

PyQt5 UI设计时自动创建qrc文件

如何从resources_rc.py恢复resource.qrc文件

PyQt5 图形处理 - Qt Designer创建qrc资源文件引用图片资源实例演示,QTextBrower组件引用图片资源方法展示

PyQt5——加载资源文件