My distribution is CentOS 6.7 with a hand-built Python 2.7.6.
Step 1: Install wxPython
This will install wxPython in your system's default Python library directory (not the one you want).
$ sudo yum install wxPython
$ sudo find / -name wx*.py
/usr/lib64/python2.6/site-packages/wxversion.py
/usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wxPython/lib/wxpTag.py
/usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wxPython/lib/wxPlotCanvas.py
/usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wx/tools/XRCed/plugins/wxlib.py
/usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wx/tools/Editra/src/wxcompat.py
/usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wx/lib/wxcairo.py
/usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wx/lib/wxpTag.py
/usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wx/lib/wxPlotCanvas.py
Step 2: Create and activate your virtualenv
$ cd
$ virtualenv -p /usr/bin/python2.7 venv
$ source venv/bin/activate
Importing wx will fail:
$ python
Python 2.7.6 (default, Dec 2 2013, 21:17:42)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import wx
Traceback (most recent call last):
File "
ImportError: No module named wx
$ cd ~/venv/lib/python2.7/site-packages
$ ln -s /usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wx
$ ln -s /usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wxPython
$ ln -s /usr/lib64/python2.6/site-packages/wxversion.py
Step 4: Start coding!
$ source venv/bin/activate
$ python
Python 2.7.6 (default, Dec 2 2013, 21:17:42)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import wx
>>> app = wx.App()
>>> frame = wx.Frame(None, -1, 'lol')
>>> frame.Show()
True
>>> app.MainLoop()
Note: I only just started playing with wxPython, so there may be other symlinks required to make it work. Let me know if so, and I'll update the post.
No comments:
Post a Comment