我设置了一个virtualenv并安装了pyqt5(pyqt5-5.7-cp35-cp35m-manylinux1_x86_64.whl):
virtualenv -p /usr/bin/python3.5 .
source bin/activate
pip install pyqt5
我创造了一个基本.qml文件:
^{pr2}$并尝试在我的python代码中加载它:
import sys
from PyQt5.QtCore import QUrl
from PyQt5.QtWidgets import QApplication
from PyQt5.QtQuick import QQuickView
if __name__ == '__main__':
myApp = QApplication(sys.argv)
view = QQuickView()
view.setSource(QUrl('basic.qml'))
view.show()
sys.exit(myApp.exec_())
它失败了
file:///[...]/main.qml:2:1: plugin cannot be loaded for module "QtQuick.Controls": Cannot load library /[virtualenv]/lib/python3.5/site-packages/PyQt5/Qt/qml/QtQuick/Controls.2/libqtquickcontrols2plugin.so: (libQt5QuickTemplates2.so.5: Can't open shared object file: File or directory not found)
import QtQuick.Controls 2.0
^
Process finished with exit code 0
我查过了。它抱怨的这个文件实际上不存在。但是我怎么安装呢?PyQt5完全支持QtQuickControls2吗?在
如果我换上进口基本.qml从import QtQuick.Controls 2.0
到{
这看起来像PyQt5中的bug。包缺少
libQt5QuickTemplates2.so
和libQt5QuickControls2.so
。在希望pyqt5.7包中包含的qt5.7版本和官方qt5.7版本可以在qt.io以完全二进制兼容的方式构建,一种可能是从qt.io,并将丢失的库复制到您的virtualenv中。例如:
相关问题 更多 >
编程相关推荐