Spyder is a matlab-like IDE for scientific computing. Following assumes that numpy and scipy is already installed in your python. I compiled spyder in both windows (32bit) and OSX machine (64bit) and both worked well. Below is compiling procedure for Windows. There are bundled packages available as well. See notes at the end of this page for the reason I set them up by myself.
Download binary (“library” version) from Nokia site and install Qt. I used “Qt libraries 4.7.3 for Windows (minGW 4.4, 319 MB)”.
mingW binary was chosen since I had many troubles before with VC compiled python modules. Since compiler is better be always same, I use mingW.
Important: After installation, set Path to Qt. Path to the c:\Qt\4.3.7\bin should be at the very front of all the other application bin path. These days, there are so many applications that comes with QtCore4.dll and if these are in front of installed Qt directory, then the wrong one is recognized.
After installing Qt, use Qt-command prompt (you will see it under menu tree start - programs - Qt by Nokia… ) for installing SIP and PyQt. Much less problem occurs by using this Qt specific command prompt.
Download source from Riverbank, compile and install by
python config.py -p win32-g++ mingw32-make mingw32-make install
Also using Qt command prompt.
Download Source from Riverbank and compile & install by
python config.py -w mingw32-make mingw32-make install
Check if PYQT is installed correctly: run script below.
import sys from PyQt4.QtGui import * app = QApplication(sys.argv) button = QPushButton("Hello World", None) button.show() app.exec_()
Note: I had to clean system environmental path before making the PyQt to work. Specifically, I deleted c:\python26\lib\site-packages\pyQt\bin from the Path, which I added a year ago when I first installed PyQt. This old installation was working, but had some problems with addressing the location of PyQt binaries. In the end, I had to move all the libraries under PyQt\bin to PyQt root (many people suggested so and indeed it worked, though awkward)
There is a list of recommended (though optional) modules in Spyder site. I installed them all using easy_install.
I already had numpy, scipy, matplotlib, sphinx & Ipython installed. I only updated numpy using superpackage.
Some changes are required for PIL module being easy-to-be namespace conflicted in some imports. Error occurred during python setup.py install of Spyder in some modules due to way PIL module is imported. For example, import Image is not specific because there are other python file with name Image.py in module other than PIL. Then import fails.
Change follwoing codes:
1. C:\Python26\Lib\site-packages\scipy\misc\pilutil.py line 10:
#import Image from PIL import Image2. C:\Python26\lib\site-packages\docutils-0.7-py2.6.egg\docutils\parsers\rst\directives\images.py
line 19 -
#try: # import Image as PIL # PIL #except ImportError: # PIL = None # patched according to http://d.hatena.ne.jp/kk6/20110302 try: import PIL except ImportError: try: import Image as PIL # PIL except ImportError: PIL = None
patched according to http://d.hatena.ne.jp/kk6/20110302
Note: The problem I encountered is “AccessInit: hash collision: 3 for both 1 and 1” error, related to the name space conflict coming from PIL package. For this error, refer to here or here. Afterward, I found more up-to-date fork of PIL (PIL has not been developed for pretty long time) called "Pillow". I might have tried using it if I knew before, but since current setup is working, I might try later when I encounter other problems.
Download source and
python setup.py install