installing wxpython via pip or easy_install

50,935

Solution 1

You seem to be new to this... welcome!

The folk at Enthought, who built EPD for you still haven't figured out how to reliably build wxPython for a 64-bit python, see here:

http://www.enthought.com/products/epdfaq.php#mac

So, you are treading into difficult waters. Have you considered going the Qt route? All traitsUI backed apps will easily port over to Qt. Currently, I like the looks of Homebrew for interacting with EPD (e.g. for installing pyQt), but the jury is still out (haven't done it yet). I'd post a link to that too, but I am a 1-point user at present...

Another possiblity would be to also install the 32-bit EPD which already includes wxPython for you. You might then use your 32-bit python for visualization and your 64-bit for serious number crunching.

If you do insist on installing wxPython, note that you won't be able to link the Carbon version (which is stable, but only 32-bit). Instead, you'll want to use wxCocoa (experimental, 64-bit). At least, this is my understanding. The Enthought folk don't make any mention of wxCocoa, and I wouldn't be surprised if there is breakage. TraitsUI is complex and difficult to debug, so be forewarned if you go this route!

Solution 2

wxPython does not include a setup.py file so neither easy_install or pip will be able to build it that way. Have a look at these instructions at the wxPython website as well as these instructions at the Enthought website to get an idea of how to build wxPython. Unfortunately, I've never built it (I don't use the Enthought version of Python) so I can't help you further than that. Good luck!

Solution 3

I don't use the EPD, but I had the same issue. It turned out Homebrew has a formula to install both wxWidget and wxPython. It works like a charm. Run the following command:

brew install --python wxmac

Solution 4

This command line works for me with Debian 7.1 64-bit:

sudo apt-get install python-wxgtk2.8 python-wxtools wx2.8-i18n libwxgtk2.8-dev libgtk2.0-dev

Solution 5

As per home page instructions:

Make sure you have at least version 6.0.8 of pip and 12.0.5 for setuptools.

Install requirements for Linux as outlined in the README document.

Install wxPython-Phoenix (Linux):

sudo pip install --upgrade \
    --trusted-host wxpython.org --pre -f \
    http://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix

Install wxPython-Phoenix (Windows, use the appropriate script folder):

C:\python27\scripts\pip.exe install --upgrade \
    --trusted-host wxpython.org --pre -f \
    http://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix
Share:
50,935

Related videos on Youtube

dtlussier
Author by

dtlussier

Mechanical engineer with experience working in composite material manufacturing and fluid mechanics research. Familiar with Linux, OS X, Python, NumPy/SciPy, HPC clusters, etc.

Updated on September 17, 2022

Comments

  • dtlussier
    dtlussier over 1 year

    I am running into some problems installing wxpython using pip.

    Here is my current output:

    [myuserid]% sudo pip install wxpython
    Downloading/unpacking wxpython
      Downloading wxPython2.8-win64-devel-2.8.11.0-msvc9x64.tar.bz2 (7.2Mb): 7.2Mb downloaded
      Running setup.py egg_info for package wxpython
        Traceback (most recent call last):
          File "<string>", line 14, in <module>
        IOError: [Errno 2] No such file or directory: '/Users/myuserid/build/wxpython/setup.py'
        Complete output from command python setup.py egg_info:
        Traceback (most recent call last):
    
      File "<string>", line 14, in <module>
    
    IOError: [Errno 2] No such file or directory: '/Users/myuserid/build/wxpython/setup.py'
    
    ----------------------------------------
    Command python setup.py egg_info failed with error code 1
    Storing complete log in /Users/myuserid/.pip/pip.log
    
    • I have had a look in the pip.log file but it is totally empty.
    • I have tried installing other packages via pip and there are no problems, so I'm concluding that pip itself is working.

    I have also tried via easy_install and got the following:

    [myuserid]% sudo easy_install wxpython
    install_dir /Library/Frameworks/EPD64.framework/Versions/6.2/lib/python2.6/site-packages/
    Searching for wxpython
    Reading http://pypi.python.org/simple/wxpython/
    Reading http://wxPython.org/
    Reading http://wxPython.org/download.php
    Best match: wxPython src-2.8.11.0
    Downloading http://downloads.sourceforge.net/wxpython/wxPython-src-2.8.11.0.tar.bz2
    Processing wxPython-src-2.8.11.0.tar.bz2
    error: Couldn't find a setup script in /tmp/easy_install-faZZOn/wxPython-src-2.8.11.0.tar.bz2
    
    • Does this mean that there is something going on with the wxpython package as grabbed by pip and easy_install
    • Aside from building from source, are there any other ways to debug or patch this type of response from pip or easy_install?

    System Config:

    • OS X 10.6
    • Enthought Python Distribution Python v2.6, 64-bit

    If there is any other information needed, please advise and I will post it.

  • dtlussier
    dtlussier over 13 years
    Ok - thanks. Any idea why they distribute it this way? Why are the libraries themselves and the Python wrapper bundled like this? To me it makes it confusing to build, especially as from pypi it appears as a regular Python package (i.e. with the py prefix).
  • fideli
    fideli over 13 years
    I'm fairly new to Python myself, but my guess is that it's because there are many configure options that need to be set that vary by platform and other reasons. That way, there's no easy way to install it.
  • user15163
    user15163 almost 12 years
    As per Homebrew's info, you should also use the --devel flag to build the experimental 64-bit build. The above won't work with a 64-bit python binary. (brew info wxmac says: "wxWidgets 2.8.x builds 32-bit only, so you probably won't be able to use it for other Homebrew-installed software. You can try to build with --devel to get the wxWidgets 2.9.x (unstable) for 64-bit and cocoa support.")
  • Chris W.
    Chris W. almost 12 years
    I wish I could upvote you twice, sir.