我在安装PySide时遇到了很多麻烦。我按照本教程的建议安装了Qt和brew install qt:pyside.readthedocs.io/en/latest/installing/macosx.html。
我的Mac已更新为High Sierra 10.13.3。当我运行pip install -U Pyside时,我得到以下打印输出:
Failed building wheel for Pyside
Running setup.py clean for Pyside
Failed to build Pyside
Installing collected packages: Pyside
Running setup.py install for Pyside ... error
Complete output from command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python -u -c "import setuptools, tokenize;__file__='/private/var/folders/4x/bkrfh91103936h2x82l9x_480000gn/T/pip-build-HTn1Jd/Pyside/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/4x/bkrfh91103936h2x82l9x_480000gn/T/pip-nRGV6n-record/install-record.txt --single-version-externally-managed --compile:
Removing /private/var/folders/4x/bkrfh91103936h2x82l9x_480000gn/T/pip-build-HTn1Jd/Pyside/pyside_package
running install
running build
Python architecture is 64bit
error: Failed to find qmake. Please specify the path to qmake with --qmake parameter.
命令
"/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python -u -c "import setuptools, tokenize;__file__='/private/var/folders/4x/bkrfh91103936h2x82l9x_480000gn/T/pip-build-HTn1Jd/Pyside/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/4x/bkrfh91103936h2x82l9x_480000gn/T/pip-nRGV6n-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /private/var/folders/4x/bkrfh91103936h2x82l9x_480000gn/T/pip-build-HTn1Jd/Pyside/
有关如何解决此问题的任何想法?谢谢!
答案 0 :(得分:0)
PySide已经过时4年了,基本上已经死了,并且不适用于4.8以后的任何Qt。但你所遵循的指示(可能也是4年过时)告诉你安装最新的Qt,目前是5.10。
要解决此问题,您需要显式安装Qt 4.8。你可以用Homebrew做到这一点:
brew install qt@4.8
但我没有测试是否有效。
此外,Homebrew的Qt软件包现在默认安装为“keg-only”链接。当您编写的旧教程被编写时,这可能不是真的。在这种情况下,您可能需要按照brew install
的输出中给出的说明进行操作,这将是这样的:
If you need to have this software first in your PATH run:
echo 'export PATH="/usr/local/opt/qt/bin:$PATH"' >> ~/.bash_profile
For compilers to find this software you may need to set:
LDFLAGS: -L/usr/local/opt/qt/lib
CPPFLAGS: -I/usr/local/opt/qt/include
For pkg-config to find this software you may need to set:
PKG_CONFIG_PATH: /usr/local/opt/qt/lib/pkgconfig
如果这听起来像是一团糟 - 或者如果你不想永远被卡在Qt 4.8上 - 那么你可能实际上并不想使用PySide。有两个主要的选择:
PySide2
由PySide核心开发人员与官方Qt公司共同设计,作为PySide的替代品,与Qt 5(可能超出)和更新版本的OS X(以及其他平台)一起使用和Python 3,并修复了一些在没有重大变化的情况下无法修复的问题。这还没有处于稳定的1.0状态,但它已经被用于实际项目。 (我相信目标是在完成后与Qt本身同步开始版本化,因此第一个稳定版本可能是5.11或5.12,而不是1.0。)PyQt
是与另一家公司不同的图书馆。它今天运行稳定,但它与PySide
没有相同的许可条款,也没有Qt公司的直接支持。 (IIRC,您可以获得商业许可或GPL许可,但不能获得LGPL - 但不信任我;请自行检查。)(Christian Tismer实际上有一个PySide到Qt5的端口,但据我所知,他在几年前放弃了它以取代PySide2项目的领导,旧版本未完成,所以我不知道不用费心去寻找。)
当然,如果您正在学习Qt4和PySide的教程,那么如果您使用Qt5和PySide2或PyQt,则需要用更新的教程替换它们。