目前无法通过apt-get进行安装。请参见github问题和特拉维斯文档。
还有其他三个选项。
您的.travis.yml
将包括:
install:
- pip install PySide
正如您所提到的,在travis-ci服务器上从源代码构建PySide需要很长时间。但是,该方法保证可行。
问题。Python3.4已包含在Ubuntu 14.04中。然后,您的.travis.yml
文件可能如下所示:
install:
- sudo apt-get install python3-pyside
你可以制作自己的 PySide 轮子,这样 Travis-CI 就不必从源代码编译 PySide 了。
按照这些说明,我通过以下方法制作了 PySide 轮子:
$ git clone https://github.com/PySide/pyside-setup.git pyside-setup
$ cd pyside-setup
$ python3.4 setup.py bdist_wheel --qmake=/usr/bin/qmake-qt4 --version=1.2.2
您可以将此wheel托管在某个位置,并通过以下方式使用travis:
install:
- sudo apt-get install libqt4-dev
- pip install PySide --no-index --find-links https://<your-site>;
# Travis CI servers use virtualenvs, so we need to finish the install by the following
- python ~/virtualenv/python${TRAVIS_PYTHON_VERSION}/bin/pyside_postinstall.py -install
其中<your-site>
是一个包含名为PySideXXXXXXX.whl
的wheel文件链接的网页,符合正确的命名规范。使用--no-index
防止pip从pypi找到并安装新版本的PySide。
请参考源代码。
该wheel文件托管在该repo的gh-pages上。
注意,在我的Ubuntu 14.04机器上,构建wheel会生成一个大约17 MB大小的文件dist/PySide-1.2.2-cp34-cp34m-linux_x86_64.whl
。当我在构建步骤中加入--standalone
标签时,文件大小为 ~77 MB。
请注意,目前仅已测试import PySide
。由于这是在Ubuntu 14.04下构建的,并且Travis-Ci服务器运行的是Ubuntu 12.04,因此我不知道PySide库有多少可用功能。如果遇到问题,您可能需要在运行Ubuntu 12.04的机器上重新进行此操作。
更新:
以下Python脚本
import PySide
from PySide import QtGui
PySide轮子在Ubuntu 14.04上构建时会失败。但是,在Ubuntu 12.04上构建PySide时,它会成功。
在您的 .travis.yml 文件中,包括以下内容:
install:
- sudo apt-get install libqt4-dev
- pip install PySide --no-index --find-links https://parkin.github.io/python-wheelhouse/;
# Travis CI servers use virtualenvs, so we need to finish the install by the following
- python ~/virtualenv/python${TRAVIS_PYTHON_VERSION}/bin/pyside_postinstall.py -install
python pyside_postinstall.py -install
即可。 - John David Reaverlanguage: python
cache: pip
对于您的.travis.yml
,缓存$HOME/.cache/pip
。因此,PySide wheel将只被构建一次,并在重新构建应用程序时保留。
travis-retry sudo apt-get install python3-pyside
对你有效吗?请注意,您还需要添加virtualenv: system_site_packages: true
。 - wellvirtualenv: system_site_packages: true
部分?我尝试将其添加到 .travis.yml 的顶层,但结果是无效的。 - aknuds1.travis.yml
文件。 - wellsystem_site_packages: true
设置导致构建失败 :( - aknuds1