【发布时间】:2014-05-03 11:04:56
【问题描述】:
我在 Pycharm 中制作了一个简单的“pst.py”(hello world)程序。当我运行它时,它会崩溃:
Qt 内部错误:无法加载 qt_menu.nib。 .nib 文件 应该放在 QtGui.framework/Versions/Current/Resources/ 或 应用程序包的资源目录。
在 PyCharm 中,通过 Python 控制台,所有模块看起来都可用:
>>> print(PySide.QtCore.qVersion())
4.7.4
>>> print(PySide.__version__)
1.1.2
所以我去了终端并尝试使用“python.app”和“pythonw”从命令行运行相同的程序。该程序同时使用 python.app 和 pythonw 运行良好。如果我只使用 python pst.py,我也会遇到同样的崩溃。
vt102:dBaseProject sloter$ python.app pst.py
vt102:dBaseProject sloter$ which python.app
/Users/sloter/anaconda/bin/python.app
vt102:dBaseProject sloter$ pythonw pst.py
vt102:dBaseProject sloter$ which pythonw
/Users/sloter/anaconda/bin/pythonw
我认为 PyCharm IDE 使用的是相同的路径 (Users/sloter/anaconda/bin/)
我观看了一个 youtube 视频,其中一个人在 PyCharm 中编写了一个非常相似的程序,然后在 Pycharm 中运行,一切正常。
那么有什么想法我需要改变以使我能够完全在 PyCharm 中开发 PySide/QT 程序?
谢谢
ps 这是我尝试运行的“pst.py”的代码
#!/Users/sloter/anaconda/bin/python
# Import PySide classes
import sys
from PySide.QtCore import *
from PySide.QtGui import *
# Create a Qt application
app = QApplication(sys.argv)
# Create a Label and show it
label = QLabel("Hello World")
label.show()
# Enter Qt application main loop
app.exec_()
sys.exit()
【问题讨论】:
-
你试过这个shebang吗:
#!/Users/sloter/anaconda/bin/python.app/Contents/MacOS/python? -
另外,你用过macdeployqt吗?
-
目录
/Users/sloter/anaconda/bin/python.app不存在。 python.app 是文件而不是目录。我不确定macdeployqt“部署”实际上做了什么——我想我用print(PySide.QtCore.qVersion()) 4.7.4 =>>> print(PySide.__version__) =1.1.2说明(证明?)Qt支持已正确安装。但也许我不懂部署。 -
此外,由于它在命令行中工作,但不是 pycharm ide,这让我觉得问题出在那儿,而不是在 Qt 的安装(部署?)中。
-
你尝试过复制还是使用macdeployqt?