$ sudo port selfupdate
$ sudo port install python27
$ sudo easy_install virtualenv
$ sudo easy_install virtualenvwrapper
export WORKON_HOME=~/Envs
source /usr/local/bin/virtualenvwrapper.sh
$ . ~/.bash_profile
$ mkdir -p $WORKON_HOME
$ mkvirtualenv --no-site-packages --python=/opt/local/bin/python2.7 py27
# --no-site-packages - ,
# --python=/opt/local/bin/python2.7 -
# py27 -
$ workon py27
(py27) $ python
Python 2.7.2 (default, Jul 21 2011, 01:27:20)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
# PySide packages
$ cd /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
$ mv PySide/ ~/Envs/py27/lib/python2.7/site-packages/
$ mv pysideuic/ ~/Envs/py27/lib/python2.7/site-packages/
# PySide libs
$ cd /usr/lib/
$ sudo mv libpyside-python2.7.* ~/Envs/py27/lib/
# PySide
$ sudo mv libshiboken-python2.7.* ~/Envs/py27/lib/
# Qt4 libs
$ cd /Library/Frameworks/
$ cp -pR Qt* ~/Envs/py27/lib/
$ cp -pR phonon.framework ~/Envs/py27/lib/ # framework!
# Qt ,
$ sudo /Developer/Tools/uninstall-qt.py
$ vi ~/Envs/py27/bin/postactivate
#
export DYLD_FRAMEWORK_PATH=~/Envs/py27/lib/
export DYLD_LIBRARY_PATH=~/Envs/py27/lib/
$ workon py27
(py27) $ python
Python 2.7.2 (default, Jul 21 2011, 01:27:20)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import PySide
>>> PySide
<module 'PySide' from '/Users/smaant/Envs/py27/lib/python2.7/site-packages/PySide/__init__.pyc'>
>>>
#!/usr/bin/env python
import sys
from PySide.QtCore import *
from PySide.QtGui import *
from PySide.QtWebKit import *
app = QApplication(sys.argv)
web = QWebView()
web.load(QUrl("http://www.pyside.org/"))
web.show()
sys.exit(app.exec_())
$ workon py27
(py27) $ python qt_test.py
$ workon py27
(py27) $ pip install py2app
from setuptools import setup APP = ['qt_test.py'] OPTIONS = {'argv_emulation': False, 'includes' : ('PySide.QtNetwork', ), 'semi_standalone': 'False', 'compressed' : 'True', 'frameworks' : ('libpyside-python2.7.1.0.dylib', 'libshiboken-python2.7.1.0.dylib'), } setup( app=APP, options={'py2app': OPTIONS}, setup_requires=['py2app'], )
Source: https://habr.com/ru/post/124573/