Difference between revisions of "Installation windows Python x86-32 minGW"

From relax wiki
Jump to navigation Jump to search
Line 1: Line 1:
= STOP =
+
= Download preparation =
 +
This guide should follow [http://www.nmr-relax.com/windows_devel.html Homepage for MS Windows development platform]
  
This page is not completed! It will not work!
+
First: Download these packages, do not unpack them yet.
 +
# (.exe): wxPython: http://www.lfd.uci.edu/~gohlke/pythonlibs/#wxpython
 +
# (.exe): scons: http://www.lfd.uci.edu/~gohlke/pythonlibs/#scons
 +
# (.zip): minfx: http://download.gna.org/minfx/
 +
# (.zip): bmrblib: http://download.gna.org/bmrblib/
  
 +
'''take the win32 bit versions.'''
 +
 +
= Install python and necessary packages =
 +
 +
I recommend to install a python distribution which is packed with several packages already.
 +
 +
== Winpython ==
 +
You could consider winpython, which includes Ipython, numpy, scipy. matplotlib etc.:<br>
 +
[https://code.google.com/p/winpython Homepage]
 +
 +
Make a folder: '''C:\WinPython27'''.<br>
 +
Run the downloaded winpython exe file, and extract to: '''C:\WinPython27'''.<br>
 +
Open '''WinPython Control Panel''' in ex. '''C:\WinPython27\WinPython-32bit-2.7.x'''<br>
 +
Drag the 4 above mentioned packakes, into the window, and install the packages.<br>
 +
For a command window, use the '''WinPython Command Prompt''' found in '''C:\WinPython27\WinPython-32bit-2.7.x''', which fixes path issues for finding python.
 +
 +
=== Trick to set variables in cmd ===
 +
Make a folder '''own''' in '''C:\WinPython27\WinPython-32bit-2.7.x\scripts''' and <br>
 +
copy '''C:\WinPython27\WinPython-32bit-2.7.x\scripts\env.bat''' to '''C:\WinPython27\WinPython-32bit-2.7.x\scripts\own\pyt32.bat'''<br>
 +
and copy '''C:\WinPython27\WinPython-32bit-2.7.x\scripts\cmd.bat''' to '''C:\WinPython27\WinPython-32bit-2.7.x\scripts\own\cmdpyt32.bat'''<br>
 +
 +
Modify '''pyt32.bat''' from
 +
<source lang="python">
 +
set WINPYDIR=%~dp0..\python-2.7.5
 +
</source>
 +
to include '''..\'''
 +
<source lang="python">
 +
set WINPYDIR=%~dp0..\..\python-2.7.5
 +
</source>
 +
 +
Modify '''cmdpyt32.bat''' from
 +
<source lang="python">
 +
call %~dp0env.bat
 +
</source>
 +
to
 +
<source lang="python">
 +
call %~dp0pyt32.bat
 +
</source>
 +
 +
=== Trick to add .bat files to PATH ===
 +
If you have permission to change the Environment Variables in windows, you can add the '''pyt32.bat''' and '''cmdpyt32.bat''' to your path.<br>
 +
Right click Computer -> properties -> Advanced system settings -> Environment Variables -> User variables ->  Edit: PATH <br>
 +
Add to end of the Variable value:
 +
;C:\WinPython27\WinPython-32bit-2.7.x\scripts\own
 +
In any folder, hold "Shift" and right click, "Open command window here". Write:
 +
<source lang="powershell">
 +
pyt32
 +
python
 +
</source>
 +
 +
= Install Visual Studio Express 2012 for Windows Desktop =
 +
[http://msdn.microsoft.com/en-us/library/vstudio/hs24szh9.aspx See versions of VS 2012 here].<br>
 +
 +
For 32 bit compiling, you will only need, '''Visual Studio Express for Windows Desktop'''.<br>
 +
From http://www.microsoft.com/visualstudio/eng/downloads, download and install: [http://go.microsoft.com/?linkid=9816758 Visual Studio 2012 Express for Windows Desktop].<br>
 +
Skip all extra packages install. After install, just exit any program, which opened after install.
 +
 +
= Install Subversion checkout of relax =
 +
Install a subversion client. For example: http://tortoisesvn.net/
 +
 +
Right click in winpython folder: '''C:\WinPython27''', and select '''SVN Checkout'''. Write the path:
 +
svn://svn.gna.org/svn/relax/trunk
 +
svn://svn.gna.org/svn/relax/branches/relax_disp relax_disp_32
 +
 +
== Bugfix scons for 32bit building ==
 +
Due to a bug, versions of scons '''<=2.3''' should alter a line in:<br>
 +
'''C:\WinPython27\WinPython-32bit-2.7.5.1\python-2.7.5\Lib\site-packages\scons-2.3.0\SCons\Tool\MSCommon\vc.py'''
 +
 +
Line '''364''':
 +
<source lang="python">
 +
    if not req_target_platform and target_platform in ('amd64','x86_64'):
 +
        try_target_archs.append('x86')
 +
</source>
 +
Should be:
 +
<source lang="python">
 +
    #if not req_target_platform and target_platform in ('amd64','x86_64'):
 +
    #    try_target_archs.append('x86')
 +
    if target_platform in ('amd64','x86_64'):
 +
        try_target_archs.append('x86')
 +
    print "requested", req_target_platform
 +
    print "target", target_platform
 +
    print "try", try_target_archs
 +
</source>
 +
 +
If not fixing the bug, you will get:
 +
<source lang="powershell">
 +
C:\WinPython27\relax_disp_32>scons
 +
scons: Reading SConscript files ...
 +
scons: done reading SConscript files.
 +
scons: Building targets ...
 +
 +
###########################
 +
# Compiling the C modules #
 +
###########################
 +
Building the relaxation curve fitting module 'target_functions\\relax_fit.pyd'
 +
 +
cl /Fotarget_functions\c_chi2.obj /c target_functions\c_chi2.c /nologo /I"C:\Win
 +
Python27\WinPython-32bit-xxx\scripts\..\python-xxx\include"
 +
'cl' is not recognized as an internal or external command,
 +
operable program or batch file.
 +
scons: *** [target_functions\c_chi2.obj] Error 1
 +
scons: building terminated because of errors.
 +
</source>
 +
 +
= Build relax =
 +
Open the '''WinPython Command Prompt''' <br>
 +
Navigate to the SVN checked out relax folder.<br>
 +
cd C:\WinPython27\relax_disp_32
 +
scons
 +
 +
Or navigate to C:\WinPython27\relax_disp_32, hold "Shift" and right click, "Open command window here". Write:
 +
pyt32
 +
scons
 +
 +
== Modify pyt32.bat ==
 +
Modify '''C:\WinPython27\WinPython-32bit-xxx\scripts\own\pyt32.bat''', and add to end of file
 +
<source lang="powershell">
 +
set PATH=%PATH%;C:\WinPython27\relax_disp_32
 +
</source>
 +
 +
Test installation, by clicking '''C:\WinPython27\WinPython-32bit-xxx\scripts\own\cmdpyt32.bat''', and write
 +
<source lang="powershell">
 +
relax
 +
relax -g
 +
</source>
 +
 +
=== Tip - shortcut to cmdpyt32.bat ===
 +
Make shortcut to '''C:\WinPython27\WinPython-32bit-xxx\scripts\own\cmdpyt32.bat''', and modify the shortcut. Set
 +
'''Start in:''' %PWD%
 +
You can now copy this shortcut around, which open a command prompt at the current folder, and set the paths correctly.
 +
 +
= Install other software =
 +
== xmgrace - for the plotting results of NMR-relax ==
 +
relax produces xmgrace "'.agr" files for plotting. There exist two ports for xmgrace to windows [http://sourceforge.net/projects/qtgrace/ QtGrace] and [http://sourceforge.net/projects/gracegtk/ GraceGTK].
 +
 +
Download [http://sourceforge.net/projects/qtgrace/ QtGrace], and unpack to '''C:\WinPython27\qtgrace_windows_binary'''. <br>
 +
Then copy '''C:\WinPython27\qtgrace_windows_binary\bin\qtgrace.exe'''  to '''C:\WinPython27\qtgrace_windows_binary\bin\xmgrace.exe'''
 +
 +
Modify '''C:\WinPython27\WinPython-32bit-xxx\scripts\own\pyt32.bat''', and add to end of file
 +
<source lang="powershell">
 +
set PATH=%PATH%;C:\WinPython27\qtgrace_windows_binary\bin
 +
</source>
 +
 +
Test installation, by clicking '''C:\WinPython27\WinPython-32bit-xxx\scripts\own\cmdpyt32.bat''', and write
 +
<source lang="powershell">
 +
xmgrace
 +
</source>
 +
which should start xmgrace.
 +
 +
== Python editor ==
 +
A good lightweight editor for windows could [[Pyscripter]]
 +
 +
= TEST INSTALLATION =
 +
After an installation you should really run an [Installation_test]
 +
 +
= Trouble shooting =
  
 
== How-to ==
 
== How-to ==
Line 21: Line 182:
 
== See also ==
 
== See also ==
 
[http://www.bozzograo.net/radiancewiki/doku.php?id=how_to_compile_radiance_using_the_mingw_tools_and_scons Guide to radiance compilation]
 
[http://www.bozzograo.net/radiancewiki/doku.php?id=how_to_compile_radiance_using_the_mingw_tools_and_scons Guide to radiance compilation]
 +
 +
[[Category:Installation]]

Revision as of 13:59, 20 June 2013

Download preparation

This guide should follow Homepage for MS Windows development platform

First: Download these packages, do not unpack them yet.

  1. (.exe): wxPython: http://www.lfd.uci.edu/~gohlke/pythonlibs/#wxpython
  2. (.exe): scons: http://www.lfd.uci.edu/~gohlke/pythonlibs/#scons
  3. (.zip): minfx: http://download.gna.org/minfx/
  4. (.zip): bmrblib: http://download.gna.org/bmrblib/

take the win32 bit versions.

Install python and necessary packages

I recommend to install a python distribution which is packed with several packages already.

Winpython

You could consider winpython, which includes Ipython, numpy, scipy. matplotlib etc.:
Homepage

Make a folder: C:\WinPython27.
Run the downloaded winpython exe file, and extract to: C:\WinPython27.
Open WinPython Control Panel in ex. C:\WinPython27\WinPython-32bit-2.7.x
Drag the 4 above mentioned packakes, into the window, and install the packages.
For a command window, use the WinPython Command Prompt found in C:\WinPython27\WinPython-32bit-2.7.x, which fixes path issues for finding python.

Trick to set variables in cmd

Make a folder own in C:\WinPython27\WinPython-32bit-2.7.x\scripts and
copy C:\WinPython27\WinPython-32bit-2.7.x\scripts\env.bat to C:\WinPython27\WinPython-32bit-2.7.x\scripts\own\pyt32.bat
and copy C:\WinPython27\WinPython-32bit-2.7.x\scripts\cmd.bat to C:\WinPython27\WinPython-32bit-2.7.x\scripts\own\cmdpyt32.bat

Modify pyt32.bat from

set WINPYDIR=%~dp0..\python-2.7.5

to include ..\

set WINPYDIR=%~dp0..\..\python-2.7.5

Modify cmdpyt32.bat from

call %~dp0env.bat

to

call %~dp0pyt32.bat

Trick to add .bat files to PATH

If you have permission to change the Environment Variables in windows, you can add the pyt32.bat and cmdpyt32.bat to your path.
Right click Computer -> properties -> Advanced system settings -> Environment Variables -> User variables -> Edit: PATH
Add to end of the Variable value:

;C:\WinPython27\WinPython-32bit-2.7.x\scripts\own

In any folder, hold "Shift" and right click, "Open command window here". Write:

pyt32
python

Install Visual Studio Express 2012 for Windows Desktop

See versions of VS 2012 here.

For 32 bit compiling, you will only need, Visual Studio Express for Windows Desktop.
From http://www.microsoft.com/visualstudio/eng/downloads, download and install: Visual Studio 2012 Express for Windows Desktop.
Skip all extra packages install. After install, just exit any program, which opened after install.

Install Subversion checkout of relax

Install a subversion client. For example: http://tortoisesvn.net/

Right click in winpython folder: C:\WinPython27, and select SVN Checkout. Write the path:

svn://svn.gna.org/svn/relax/trunk
svn://svn.gna.org/svn/relax/branches/relax_disp relax_disp_32

Bugfix scons for 32bit building

Due to a bug, versions of scons <=2.3 should alter a line in:
C:\WinPython27\WinPython-32bit-2.7.5.1\python-2.7.5\Lib\site-packages\scons-2.3.0\SCons\Tool\MSCommon\vc.py

Line 364:

    if not req_target_platform and target_platform in ('amd64','x86_64'):
        try_target_archs.append('x86')

Should be:

    #if not req_target_platform and target_platform in ('amd64','x86_64'):
    #    try_target_archs.append('x86')
    if target_platform in ('amd64','x86_64'):
        try_target_archs.append('x86')
    print "requested", req_target_platform
    print "target", target_platform
    print "try", try_target_archs

If not fixing the bug, you will get:

C:\WinPython27\relax_disp_32>scons
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...

###########################
# Compiling the C modules #
###########################
Building the relaxation curve fitting module 'target_functions\\relax_fit.pyd'

cl /Fotarget_functions\c_chi2.obj /c target_functions\c_chi2.c /nologo /I"C:\Win
Python27\WinPython-32bit-xxx\scripts\..\python-xxx\include"
'cl' is not recognized as an internal or external command,
operable program or batch file.
scons: *** [target_functions\c_chi2.obj] Error 1
scons: building terminated because of errors.

Build relax

Open the WinPython Command Prompt
Navigate to the SVN checked out relax folder.

cd C:\WinPython27\relax_disp_32
scons

Or navigate to C:\WinPython27\relax_disp_32, hold "Shift" and right click, "Open command window here". Write:

pyt32
scons

Modify pyt32.bat

Modify C:\WinPython27\WinPython-32bit-xxx\scripts\own\pyt32.bat, and add to end of file

set PATH=%PATH%;C:\WinPython27\relax_disp_32

Test installation, by clicking C:\WinPython27\WinPython-32bit-xxx\scripts\own\cmdpyt32.bat, and write

relax
relax -g

Tip - shortcut to cmdpyt32.bat

Make shortcut to C:\WinPython27\WinPython-32bit-xxx\scripts\own\cmdpyt32.bat, and modify the shortcut. Set

Start in: %PWD%

You can now copy this shortcut around, which open a command prompt at the current folder, and set the paths correctly.

Install other software

xmgrace - for the plotting results of NMR-relax

relax produces xmgrace "'.agr" files for plotting. There exist two ports for xmgrace to windows QtGrace and GraceGTK.

Download QtGrace, and unpack to C:\WinPython27\qtgrace_windows_binary.
Then copy C:\WinPython27\qtgrace_windows_binary\bin\qtgrace.exe to C:\WinPython27\qtgrace_windows_binary\bin\xmgrace.exe

Modify C:\WinPython27\WinPython-32bit-xxx\scripts\own\pyt32.bat, and add to end of file

set PATH=%PATH%;C:\WinPython27\qtgrace_windows_binary\bin

Test installation, by clicking C:\WinPython27\WinPython-32bit-xxx\scripts\own\cmdpyt32.bat, and write

xmgrace

which should start xmgrace.

Python editor

A good lightweight editor for windows could Pyscripter

TEST INSTALLATION

After an installation you should really run an [Installation_test]

Trouble shooting

How-to

Download mingw-get-inst, and run it.

  1. Install to: C:\MinGW
  2. Take all options when installing (about 450 MB)
  3. Take the "pre" package option
It`ll use mingw compiler with msvc options in this case. Will not it? 
I think we have to use 
env = Environment(tools = ['default','mingw']) 
instead. 

env = Environment(tools = ['mingw'])

See also

Guide to radiance compilation