I want to use VTK together with Python on a Windows system.
It seems that I cannot use the windows installer but "have to compile VTK from source code using CMake and a native build system". So far I have installed CMake.
But now I wonder how to proceed? It seems that I need MS Visual Studio to create the project files?!
But I don't have Visual Studio. So what can I do?
There is a VTK installer here:
http://www.lfd.uci.edu/~gohlke/pythonlibs/
It appears to work fine for me and it beats compiling it.
It wasn't the case when you asked this question, but since version 6.1, vtk-python ships with a Windows (linux and osx) installer. See their download page for more information.
You can use VTK with python just installing pythonxy framework, it is just a python with many many libraries included VTK, ITK, Qt and many other, also it is very well documented, and also have many examples, all in python. I recommend it to you, I have worked a lot with it, and is very amazing.
Just make a try. All you have to do is in the installer wizard select among the tools, VTK, and it will be installed with vtk.
If 32bit is enough for you, I suggest looking into Python(x,y). You get not only VTK but a whole lot of other useful scientific libraries.
Related
We used to distribute (for Windows) a very large Python 2/PyGTK application by packaging Python installer itself along other needed installers and packages through an InnoSetup script. Among with those other installers and packages we deliver an all-in-one PyGTK package and it worked very well.
Now we've converted our software for Python 3 and GTK 3. Ok, there is an all-in-one for PyGI [1] (PyGObject Introspection), but just for Python 2.7 to 3.4 and we need at least Python 3.7.
I've spent last couple of weeks learning MSYS2 and trying to understand how MyPaint or Gaphor (which are similar apps) are distributed for Windows without success. I am able to download and install GTK and PyGI using pacman on MSYS2/MingW64 but I cannot figure out how can I create such a package like PyGI all-in-one. I asked for help or instructions on SourceForge but I got no responses so far.
I am asking for help or any clues on how can I generate a PyGI-all-in-one-like installer. Thanks in advance!
[1] https://sourceforge.net/projects/pygobjectwin32/
You can bundle a PyGObject app in Windows using PyInstaller. It can be used with either MSYS2 or gvsbuild to find and bundle all the GTK libraries you need. Then you can use your InnoSetup script to create an installer.
I am coding a simple keylogger using Python. I hope to use pyHook to capture keyboard events.I couldn't find any packages of pyHook for python 3.3 which I have installed. Is there any other module for python 3.3 which provides similar functionalities?
A quick google turned up this site, which has unofficial installers for pyHook 1.5.1 (and a whole lot of other packages) for Python 3.3. I haven't tested it, but it seems worth trying. And there are a couple of other similar repositories on the first page of Google results if this one doesn't work.
I also found a few forks on github, like this one, which have fixes for Unicode bugs in 3.x. I have no idea if those bugs have been fixed in the main pyHook project (or made it into the 1.5.1 release), but if you run into problems, you may want to take a look.
You'd have a lot more options if you installed a compiler (MinGW and/or Visual Studio Express) and used easy_install or pip to install packages automatically, building them from source if necessary. Then you wouldn't need to search for binary installers for everything.
The inofficial installers mentioned by abarnert seem to work fine. They provide installers for almost every version of Python - except for 3.5, which is currently considered unstable anyway (07/10/14), so that's not a big issue.
For research related Python programs, I require Python 2.6 (or 2.7), numpy, scipy and matplotlib. Occasionally, I'm going to use other modules such as mayavi2 or numexpr.
The programs in questions will be exchanged between (Ubuntu) Linux and Windows and can be modified to work across platforms. The setup on the Windows side should resemble the Linux one as closely as possible. Integration with COM, .NET, or the Windows OS is not required.
I'm aware of the following options:
Python for Windows from python.org
ActivePython
Python(x,y), a bundle of Python with modules and GUIs
Enthought Python distribution, a bundle of Python with modules
Which of those will provide me most efficiently with a setup that just works? And how would they differ?
EDIT 2017-11-4: At this point in time Anaconda seems by far to be the best option. It is multi-platform, doesn't require admin/root permission, and it allows you to install multiple python versions in parallel.
Original post
The easiest way to install all the python libraries necessary for scientific computing is to install either Python(x,y) or Enthought Python Distribution (EPD). Both offer a fairly similar set of packages (including numexpr and mayavi2), so it's probably just a matter of personal preference. I prefer Python(x,y) because it is fully open source, whereas EPD is a commercial product with a free edition. You can compare the included packages for EPD and Python(x,y).
Both these options are much better than using the standard python (or ActiveState) then manually installing all the required scientific packages. Both should work well with code transported from Linux. It's worth mentioning that EPD also has a Linux version, so if you need all packages and versions to be absolutely identical between Windows and Linux setups, this might be the way to go.
Edit:The win32-superpack is a good option if you just want a few basic scientific packages, but if you want more complex things like mayavi, you'd need to install them yourself.
Edit 2013-05-03:
There are now a couple of other options which are also worth considering: winpython and anaconda
The question is old, but the answer nowadays to this question will always be Anaconda, so I thought I provide you a link to it.
Not only for scientfic purposes - it has all the libraries and tools for this, installed - but its also the best python distribution in general:
https://www.anaconda.com/download/
I have used the win32-superpack from the official SciPy distribution. It includes Python, NumPy, SciPy, matplotlib, etc. and everything works out of the box.
Maybe I should also comment on the packages on your list:
The standard Python distribution from Python.org does not include SciPy, as far as I know.
The Enthought distribution is installed on some of the computer clusters that I am using. It is linked against the Intel MKL and could be faster for linear algebra than the SciPy one. But it is a commercial package. Python programs developed with the SciPy distribution should, however, run without problems under Enthought, too.
I don't know anything about the other two distributions.
I've been able to install rpy2 v2.0.8 from the .msi from source forge, but I'd like to use the latest version that includes the packages code, i.e. v2.1.9.
I'm attempting to compile rpy2 in windows (python 2.6.6).
CL is complaining because LibExtern is being defined as extern and as declspec in different place.
gcc and c++ can't compile without errors either.
I'm assuming this compiles ok on unix and that all I'm missing is some config (prob environment variables), since I can't believe it would have been released in a non-compilable form.
Any anyone point me in the right direction pls?
Many thx
DM
Your best bet is to download it from this site. It has all the popular repositories that need to be compiled in order to work. Its basically a group Unofficial Windows Binaries for Python Extension Packages by Christoph Gohlke at The Laboratory for Fluorescence Dynamics, University of California, Irvine.
I've given you the link to the latest version of rpy2, and there are versions for every type of Python. Please note that you will need R installed. Download the version for 2.7, it should work for 2.6.6, but if it does not, then update your Python 2.7.5.
However, if you are still keen on actually compiling the binaries, then you will need to give me the error messages and the tracebacks, as otherwise, one cannot know for sure what your exact problems are.
RDFLib needs C extensions to be compiled to install on ActiveState Python 2.5; as far as I can tell, there's no binary installer anywhere obvious on the web. On attempting to install with python setup.py install, it produces the following message:
error: Python was built with Visual Studio 2003;
extensions must be built with a compiler than can generate compatible binaries.
Visual Studio 2003 was not found on this system. If you have Cygwin installed,
you can try compiling with MingW32, by passing "-c mingw32" to setup.py.
There are various resources on the web about configuring a compiler for distutils that discuss using MinGW, although I haven't got this to work yet. As an alternative I have VS2005.
Can anyone categorically tell me whether you can use the C compiler in VS2005 to build Python extension modules for a VS2003 compiled Python (in this case ActiveState Python 2.5). If this is possible, what configuration is needed?
The main problem is C run-time library. Python 2.4/2.5 linked against msvcr71.dll and therefore all C-extensions should be linked against this dll.
Another option is to use gcc (mingw) instead of VS2005, you can use it to compile python extensions only. There is decent installer that allows you to configure gcc as default compiler for your Python version:
http://www.develer.com/oss/GccWinBinaries
I can't tell you categorically, but I don't believe you can. I've only run into this problem in the inverse situation (Python built with VS2005, trying to build with VS2003). Searching the web did not turn up any way to hack around it. My eventual solution was to get VC Express, since VC2005 is when Microsoft started releasing the free editions. But that's obviously not an option for you.
I don't use ActiveState Python, but is there a newer version you could use? The source ships with project files for VS2008, and I'm pretty sure the python.org binary builds stopped using VS2003 a while ago.
As of today Mar 2012, I can categorically say it is possible with Python2.4.4 (only one I've tested) and Visual Studio 2005 and 2008. Just installing VS10 to check that. I don't know why it works and I have problems using distutils so I have to compile manually.