Hi,

You got it!  The problem was the 64 vs. 32-bit mismatch.  When I
compile the MS Windows distribution package
(http://www.nmr-relax.com/download.html#MS_Windows) on 32-bit Windows
2000 with MSVS 2005 and 32-bit Python 2.7, the modules there are
32-bit.  This 32-bit module should run fine on 64-bit MS Windows
machines.  I also have a vm with 64-bit Win7 with MSVS 2010 and 64-bit
Python 2.7 where I can compile 64-bit relax modules.  Using stock MSVS
with the stock Python from http://python.org/, this compilation issue
is not encountered.

A good test would be to now check out the relax trunk and to run the
full test suite.  The trunk is kept in a state whereby the test suite
always passes (well, I try anyway).  You can run the full test suite
with:

$ relax --test-suite

For the relax trunk, this should pass.  Note that the test suite is
incredibly extensive - it can take up to 30 minutes to 1 hour to
complete on a relatively modern computer.  You will need to install
the minfx (https://gna.org/projects/minfx/) and bmrblib
(http://gna.org/projects/bmrblib/) Python modules.  These are included
within the relax distribution packages, but for the source code
repository you will need to install them as regular Python packages.
You will also need scipy and wxPython.  A second good test would be to
launch the relax GUI with:

$ relax --gui

If you do this for the relax_disp branch, you can test if you can
start a relaxation dispersion analysis.  For the relax trunk, you
could also try running the test suite again from within the GUI via
the menu system.

You may have noticed that I have updated the MS Windows development
platform webpage (http://www.nmr-relax.com/windows_devel.html) as we
have been battling this problem.  It should now be more up to date.  I
was wondering if you had HTML coding skills?  The HTML code for the
relax website is quite basic.  I was thinking that we could create a
new section for that page titled "1. Python" and then shift the
numbers of all the others down.  Then "1.1 Official Python" would
describe the installation of the stock Python for http://python.org/,
and all the 1.1.x subsections could describe the setup and
installation of the Python modules required (minfx -
https://gna.org/projects/minfx/, bmrblib -
http://gna.org/projects/bmrblib/, numpy, scipy, and wxPython).
Section "1.2 WinPython" could then describe that setup and how to
install the modules.  Section "1.3 EPD" may no longer be necessary.
We could also add a new section "2.4.4" or "3.4.4" after the
renumbering for the 64-bit vs. 32-bit compilation issue with
WinPython.  I have also modified section 4 to be about different code
editors rather than just Vim.  So your editor of choice could also be
described there, including the settings required for coding for relax.
 Most of the text from your relax.txt file (see the end of
http://thread.gmane.org/gmane.science.nmr.relax.devel/3835/focus=3854)
could be incorporated into this webpage, just modified for WinPython
rather than EPD.  For other relax users in the future, it would be
great to have this information permanently added to
http://www.nmr-relax.com/windows_devel.html.  If you would like to
help incorporate the details of your relax.txt file into this webpage,
you can check out the entire relax website with the command:

$ svn co https://svn.gna.org/svn/relax/website

Just be wary that, because SVN minimally keeps 2 copies of each file,
the entire website when checked out currently takes 1.6 Gb of disk
space.  This includes 1.5 Gb of API documentation
(http://www.nmr-relax.com/api/).

Cheers,

Edward




On 13 May 2013 19:54, Troels Emtekær Linnet <[email protected]> wrote:
> I succeded with the 32 bit ! :-)
>
> --------------------------------
>
> C:\WinPython27\packages_32bit\relax_disp>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-2.7.4.1\python-2.7.4\include"
> c_chi2.c
> cl /Fotarget_functions\exponential.obj /c target_functions\exponential.c
> /nologo
>  /I"C:\WinPython27\WinPython-32bit-2.7.4.1\python-2.7.4\include"
> exponential.c
> cl /Fotarget_functions\relax_fit.obj /c target_functions\relax_fit.c /nologo
> /I"
> C:\WinPython27\WinPython-32bit-2.7.4.1\python-2.7.4\include"
> relax_fit.c
> c:\winpython27\packages_32bit\relax_disp\target_functions\relax_fit.c(137) :
> war
> ning C4700: uninitialized local variable 'params' used
> link /nologo /dll /out:target_functions\relax_fit.pyd
> /implib:target_functions\r
> elax_fit.lib
> /LIBPATH:C:\WinPython27\WinPython-32bit-2.7.4.1\python-2.7.4\libs t
> arget_functions\c_chi2.obj target_functions\exponential.obj
> target_functions\rel
> ax_fit.obj
>    Creating library target_functions\relax_fit.lib and object
> target_functions\r
> elax_fit.exp
> scons: done building targets.
>
> C:\WinPython27\packages_32bit\relax_disp>relax
>
>
>
>                        relax repository checkout r19681
>                 svn://svn.gna.org/svn/relax/branches/relax_disp
>
>                     Molecular dynamics by NMR data analysis
>
>                    Copyright (C) 2001-2006 Edward d'Auvergne
>               Copyright (C) 2006-2013 the relax development team
>
> This is free software which you are welcome to modify and redistribute under
> the conditions of the GNU General Public License (GPL).  This program,
> including all modules, is licensed under the GPL and comes with absolutely
> no
> warranty.  For details type 'GPL' within the relax prompt.
>
> Assistance in using the relax prompt and scripting interface can be accessed
> by
> typing 'help' within the prompt.
>
> Processor fabric:  Uni-processor.
>
> relax>
>
>
> 2013/5/13 Troels Emtekær Linnet <[email protected]>
>>
>> Hi Edward.
>>
>> Let's then do it with the winpython.
>> http://code.google.com/p/winpython/
>>
>> It's free for all, and you can setup a "local" version of python.
>> I even like this distribution better than epd, since it is more "free".
>> (It just came to my attention, some days ago)
>> And you have the spyder gui packed in, ready for coding scientific in
>> windows.
>>
>> I downloaded the 64 bit.
>> I opened the Winpython control panel, in the extracted folder. See info
>> here: http://code.google.com/p/winpython/wiki/WPPM
>> Downloaded and "Dragged" in minfx (as tar.gz), into the control panel to
>> install.
>> Downloaded scons 64 bit from Gohlke:
>> http://www.lfd.uci.edu/~gohlke/pythonlibs/
>> Also dragged the .exe file into control panel to install.
>> Opened the short cut to windows command (fixes path issues), and tested
>> the call to scons. (where scons).
>> Fixed the scons bug thing in the python file.
>> After confirming it was using the right scons, I navigated to the
>> relax-disp folder.
>> Did a scons clean_all, and then scons
>>
>> Same issues last night.
>>
>> I will try the 32 bit version, a little later today.
>>
>> Best
>> Troels
>>
>> Troels Emtekær Linnet
>>
>>
>> 2013/5/13 Edward d'Auvergne <[email protected]>
>>>
>>> Oh, one slight problem with EPD - I don't have a university email and
>>> do not work at a university.  The Canopy Express version which is free
>>> does not support 64-bit.  I might have a problem replicating this!  Do
>>> you use 64-bit Windows 7 with the 64-bit EPD?
>>>
>>> Regards,
>>>
>>> Edward
>>>
>>>
>>>
>>> On 13 May 2013 15:06, Edward d'Auvergne <[email protected]> wrote:
>>> > Hi,
>>> >
>>> > Sorry I didn't see the attached file.  It's better to copy and paste
>>> > such text directly in an email, or attach it to one of the relax
>>> > trackers (support request, bug tracker, or task tracker).  For example
>>> > for relaxation dispersion there is the task at
>>> > https://gna.org/task/?6401.  In some cases it is better to create a
>>> > support request for just that specific file.  Attaching files to
>>> > messages sent to mailing lists is not a good idea as the number of
>>> > copies of that attachment will be massively amplified and sent out to
>>> > all people on the mailing list.  It is a strain on the open source
>>> > infrastructure of Gna! and on the infrastructure of the mailing list
>>> > archivers:
>>> >
>>> > https://mail.gna.org/public/relax-devel/2013-05/msg00021.html
>>> > http://thread.gmane.org/gmane.science.nmr.relax.devel/3835/focus=3854
>>> > http://www.mail-archive.com/[email protected]/msg03785.html
>>> > http://marc.info/?l=relax-devel&m=136844948831132&w=2
>>> >
>>> > I'll install EPD and see if I can reproduce the issue.  To do that I
>>> > need to install exactly the same software and software versions.
>>> >
>>> > Cheers,
>>> >
>>> > Edward
>>> >
>>> >
>>> >
>>> > On 13 May 2013 14:50, Troels Emtekær Linnet <[email protected]> wrote:
>>> >> Hi Edward.
>>> >>
>>> >> I have the EPD dist. installed. (Not the Canopy)
>>> >> (The detailed install instructions, I have specified in the attached
>>> >> text
>>> >> file.)
>>> >>
>>> >> I also tried with the winpython dist. yesterday, with the same result.
>>> >>
>>> >> I am about to try out the win32 distribution of these.
>>> >>
>>> >> Best
>>> >> Troels
>>> >>
>>> >> Troels Emtekær Linnet
>>> >>
>>> >>
>>> >> 2013/5/13 Edward d'Auvergne <[email protected]>
>>> >>>
>>> >>> Hi Troels,
>>> >>>
>>> >>> I'm looking at replicating your setup in a virtual machine, but there
>>> >>> is one piece of information missing.  Did you use Anaconda
>>> >>> (http://continuum.io) or Enthought Python Distribution (EPD,
>>> >>> https://www.enthought.com/canopy-express/) in combination with
>>> >>> IPython?  This might be where the problem lies, one of these might
>>> >>> not
>>> >>> be compatible with compiling the C modules or may require settings to
>>> >>> be changes to allow it to run with the MSVS compilers.
>>> >>>
>>> >>> Cheers,
>>> >>>
>>> >>> Edward
>>> >>>
>>> >>>
>>> >>>
>>> >>>
>>> >>> On 12 May 2013 21:21, Edward d'Auvergne <[email protected]> wrote:
>>> >>> > Hi,
>>> >>> >
>>> >>> > Maybe I could try to set up MSVS 2012 tomorrow in a virtual machine
>>> >>> > with
>>> >>> > 64-bit Win7 and see if I can reproduce the problem.  It is clear
>>> >>> > that
>>> >>> > the
>>> >>> > relax sconstruct script is pointing to all the correct locations.
>>> >>> > If
>>> >>> > you
>>> >>> > type out the compiler commands by hand, they should just work.
>>> >>> > Therefore
>>> >>> > the problem is very unlikely to be with relax itself, but rather
>>> >>> > with
>>> >>> > the
>>> >>> > Microsoft 2012 C++ toolchain and/or its interaction with IPython.
>>> >>> > I'm
>>> >>> > wondering if it is a 64 vs. 32-bit mismatch issue.  Do you have a
>>> >>> > 64-bit
>>> >>> > Windows install?  Is the compiler toolchain (MSVS) 64-bit?  Is the
>>> >>> > Python
>>> >>> > version bundled with IPython 64-bit?  I really hope the issue is
>>> >>> > not
>>> >>> > because
>>> >>> > IPython is incompatible with MSVS!  I think we are narrowing the
>>> >>> > problem
>>> >>> > down a bit and we should get to the bottom of it soon.  For me
>>> >>> > replicating
>>> >>> > the issue, could you list the exact version and bit number of the
>>> >>> > operating
>>> >>> > system, MSVS, and IPython.
>>> >>> >
>>> >>> > Cheers,
>>> >>> >
>>> >>> > Edward
>>> >>> >
>>> >>> >
>>> >>> >
>>> >>> >
>>> >>> > On Sunday, 12 May 2013, Troels Emtekær Linnet wrote:
>>> >>> >>
>>> >>> >> Hi Edward.
>>> >>> >>
>>> >>> >> I have a the file
>>> >>> >> python27.lib
>>> >>> >> in C:\Python27\libs.
>>> >>> >>
>>> >>> >> I still don't have a clue whats wrong.
>>> >>> >> Could it be something with Visual C++ 2005 Express Edition?
>>> >>> >>
>>> >>> >> I am not sure the installation went correct, since when I do
>>> >>> >> Windows Start button->Microsoft Windows SDK v7.1->Visual Studio
>>> >>> >> Registration->Windows SDK Configuration Tool
>>> >>> >> Change "Installed Windows SDK Versions:" from v7.1 to 8.0
>>> >>> >> I get an error:
>>> >>> >> "Your system does not have Visual Studio 2005 or  Visual Studio
>>> >>> >> 2008
>>> >>> >> installed"
>>> >>> >>
>>> >>> >> Best
>>> >>> >>
>>> >>> >> Troels Emtekær Linnet
>>> >>> >>
>>> >>> >>
>>> >>> >> 2013/5/11 Edward d'Auvergne <[email protected]>
>>> >>> >>
>>> >>> >> Hi,
>>> >>> >>
>>> >>> >> We should be able to get to the bottom of the problem and make
>>> >>> >> this
>>> >>> >> run.  But setting up the development platform on MS Windows of the
>>> >>> >> MSVS compiler and Python is always painful.  Because of this I set
>>> >>> >> up
>>> >>> >> a virtual machine image of Windows 2000 with MSVS 2005 many years
>>> >>> >> ago
>>> >>> >> and have been using this to build the Windows pre-compiled relax
>>> >>> >> distributions (http://www.nmr-relax.com/download.html#MS_Windows)
>>> >>> >> ever
>>> >>> >> since.  I have updated Python to version 2.7 on this vm, but the
>>> >>> >> compiler setup works and I don't want to have to set up another
>>> >>> >> environment.
>>> >>> >>
>>> >>> >> From the error messages, it is clear that this 2012 version of the
>>> >>> >> Microsoft compiler catches more problems in the code.  The
>>> >>> >> warning:
>>> >>> >>
>>> >>> >> c:\python27\github\relax_disp\target_functions\relax_fit.c(137) :
>>> >>> >> warning C4700: uninitialized local variable 'params' used
>>> >>> >>
>>> >>> >> may be an issue.  I think this is harmless, but you could try to
>>> >>> >> comment out line 137 of that file (the call to the exponential()
>>> >>> >> function) and see if that makes a difference.  This is inside the
>>> >>> >> dfunc() function which is both non-functional and not used.  This
>>> >>> >> is
>>> >>> >> supposed to return the gradient of the exponential curve but is
>>> >>> >> not
>>> >>> >> implemented yet as simplex optimisation, which does not require
>>> >>> >> the
>>> >>> >> gradient or Hessian, was sufficient for finding the solution for
>>> >>> >> this
>>> >>> >> 2 parameter problem.
>>> >>> >>
>>> >>> >> From these new messages, it is clear that the Python.h file is
>>> >>> >> being
>>> >>> >> found.  The include /I"C:\Python27\Scripts\..\include" is
>>> >>> >> interesting
>>> >>> >> as this implies that sys.prefix as seen by scons is set to
>>> >>> >> "C:\Python27\Scripts\..".  Although strange, this may not be an
>>> >>> >> issue.
>>> >>> >>  But when you run Python, you see sys.prefix as "C:\Python27".
>>> >>> >> Hmmmm.....
>>> >>> >>
>>> >>> >> Maybe the problem is not that Python.h cannot be found, but that
>>> >>> >> the
>>> >>> >> python32.lib file cannot be found.  Can you see this file in your
>>> >>> >> C:\Python27\libs\ directory?  You can see that this is used in the
>>> >>> >> linking command:
>>> >>> >>
>>> >>> >> link /nologo /dll /out:target_functions\relax_fit.pyd
>>> >>> >> /implib:target_functions\relax_fit.lib /LIBPATH:C:\Python27\libs
>>> >>> >> target_functions\c_chi2.obj target_functions\exponential.obj
>>> >>> >> target_functions\relax_fit.obj
>>> >>> >>
>>> >>> >> On Windows, there should be a python32.lib file in the LIBPATH.
>>> >>> >>
>>> >>> >> Regards,
>>> >>> >>
>>> >>> >> Edward
>>> >>> >>
>>> >>> >>
>>> >>> >>
>>> >>> >>
>>> >>> >>
>>> >>> >>
>>> >>> >> On 11 May 2013 12:41, Troels Emtekær Linnet <[email protected]>
>>> >>> >> wrote:
>>> >>> >> > Hi Edward.
>>> >>> >> >
>>> >>> >> > Sigh.
>>> >>> >> >
>>> >>> >> > I have looked around for
>>> >>> >> > "error LNK2019: unresolved external symbol"
>>> >>> >> > and it seems that many experience the problem.
>>> >>> >> >
>>> >>> >> > But there don't seem to be an universal explanation/bug fix.
>>> >>> >> > And if I find a thing I would like to try, I really don't know
>>> >>> >> > where
>>> >>> >> > to
>>> >>> >> > start. ? :-)
>>> >>> >> >
>>> >>> >> > - "In Visual-Studio most linkage problems are related to forget
>>> >>> >> > adding
>>> >>> >> > .cpp
>>> >>> >> > files."
>>> >>> >> > - Url 2,  Url3, Url4, Url5, Url6
>>> >>> >> >
>>> >>> >> > In the last Url, there is this solution:
>>> >>> >> > ---
>>> >>> >> > in the Project properties, set the Platform Toolset to VS2008
>>> >>> >> > (v90)
>>> >>> >> > and
>>> >>> >> > the
>>> >>> >> > correct directories depending on your installation (ie : include
>>> >>> >> > =>
>>> >>> >> > C:\Program Files (x86)\Windows
>>> >>> >> > Kits\8.0\Include\shared;C:\Program
>>> >>> >> > Files
>>> >>> >> > (x86)\Windows Kits\8.0\Include\um;$(IncludePath) and Libraries
>>> >>> >> > =>
>>> >>> >> > C:\Program
>>> >>> >> > Files (x86)\Windows Kits\8.0\Lib\win8\um\x64;$(LibraryPath)).
>>> >>> >> > Don't
>>> >>> >> > forget
>>> >>> >> > to set the .lib in Link entries.
>>> >>> >> > ---
>>> >>> >> >
>>> >>> >> > After installation of Visual Studio 2012, I do have the folder:
>>> >>> >> > C:\Program Files (x86)\Windows Kits\8.0
>>> >>> >> >
>>> >>> >> > I have  attached a text file, how I have installed until now.
>>> >>> >> >
>>> >>> >> > I hope we can break this "annoying behaviour?"
>>> >>> >> > Where should I look, if .ccp files is added ??
>>> >>> >> >
>>> >>> >> > Best
>>> >>> >> > Troels
>>> >>> >> > ------------------------
>>> >>> >> >
>>> >>> >> > C:\Python27\github\relax_disp>scons clean_all
>>> >>> >> > scons: Reading SConscript files ...
>>> >>> >> > scons: done reading SConscript files.
>>> >>> >> > scons: Building targets ...
>>> >>> >> > clean_manual_files(["manual_clean"], [])
>>> >>> >> >
>>> >>> >> > ##########################################
>>> >>> >> > # Cleaning up the temporary manual files #
>>> >>> >> > ##########################################
>>> >>> >> >
>>> >>> >> >
>>> >>> >> >
>>> >>> >> >
>>> >>> >> >
>>> >>
>>> >>
>>
>>
>

_______________________________________________
relax (http://www.nmr-relax.com)

This is the relax-devel mailing list
[email protected]

To unsubscribe from this list, get a password
reminder, or change your subscription options,
visit the list information page at
https://mail.gna.org/listinfo/relax-devel

Reply via email to