On Sun, Aug 22, 2010 at 8:40 AM, Sebastian Haase <[email protected]> wrote: > On Sun, Aug 22, 2010 at 8:16 AM, Sebastian Haase <[email protected]> wrote: >> On Sun, Aug 22, 2010 at 3:39 AM, Sebastian Haase <[email protected]> wrote: >>> On Sun, Aug 22, 2010 at 12:02 AM, Christoph Gohlke <[email protected]> wrote: >>>> >>>> >>>> On 8/21/2010 2:37 PM, Sebastian Haase wrote: >>>>> On Sat, Aug 21, 2010 at 11:29 PM, Christoph Gohlke<[email protected]> >>>>> wrote: >>>>>> >>>>>> >>>>>> On 8/21/2010 1:44 PM, Sebastian Haase wrote: >>>>>>> Hi, >>>>>>> >>>>>>> this is somewhat OT for this list, but since I know that David and >>>>>>> many others here have lot's of experience compiling C extensions I >>>>>>> thought I could just ask: >>>>>>> Looking at >>>>>>> http://sourceforge.net/projects/mingw-w64/files/ >>>>>>> I did not know (even after reading the FAQ) which file to download and >>>>>>> how things would eventually work. >>>>>>> >>>>>>> I have a 64bit windows 7 installed, and got many precompiled packages >>>>>>> for amd64 Python 2.7 from >>>>>>> http://www.lfd.uci.edu/~gohlke/pythonlibs/ >>>>>>> (thanks to Christoph Gohlke for all the work) >>>>>>> But now I have some C++ extensions on my own, and know how build them >>>>>>> using cygwin -- but that would only produce 32bit modules and should >>>>>>> be unusable. >>>>>>> >>>>>>> So, the question is if someone has or knows of some tutorial about how >>>>>>> to go about this - step by step. This info could maybe even go the >>>>>>> scipy wiki.... >>>>>>> >>>>>>> Thanks, >>>>>>> Sebastian Haase >>>>>> >>>>>> >>>>>> Hi Sebastian, >>>>>> >>>>>> I am not aware of such a tutorial. There's some information at >>>>>> <http://projects.scipy.org/numpy/wiki/MicrosoftToolchainSupport> >>>>>> >>>>>> I did not have good experience last time (about a year ago) I tried >>>>>> mingw-w64. Occasional crashes during compilation and at runtime. >>>>>> Probably that has changed. At least you have to create the missing >>>>>> libpython and libmsvcr90 libraries from the dlls and make libmsvcr90 the >>>>>> default crt. >>>>>> >>>>>> You probably know that the "free" Windows 7 Platform SDK can be used to >>>>>> build Python>=2.6 extensions written in C89. >>>>>> <http://mattptr.net/2010/07/28/building-python-extensions-in-a-modern-windows-environment/> >>>>>> >>>>>> -- >>>>> Hi Christoph, >>>>> >>>>> I did not exactly know this - thanks for the info (I knew about >>>>> something called Visual Studio Express 2003- but that only >>>>> works/worked for Python 2.5, I think...) >>>> >>>> You can use Visual Studio Express 2008 for building 32 bit extensions >>>> for Python >=2.6. >>>> >>>>> >>>>> Rephrasing my original question: Is the mingw-w64 at all "easy" by now >>>> >>>> Don't know. David Cournapeau probably has the most experience. >>>> >>>> http://bugs.python.org/issue4709 >>>> http://www.equation.com/servlet/equation.cmd?call=fortran >>>> >>>>> ? How about cross compiling to 64bit Windows from a 32bit Ubuntu (that >>>>> I could easily run on virtualbox) ? >>>> >>>> I am also interested in cross compiling on Ubuntu but have not found the >>>> time to get started. The IOCBio project cross-compiles their 32 bit >>>> extensions on Linux >>>> <http://code.google.com/p/iocbio/wiki/BuildWindowsInstallersOnLinux>. >>>> But as you can see they use Wine and Mingw... >>>> >>>>> >>>>> (But I'm not apposed at all to the "free" Windows 7 Platform SDK, so >>>>> I'll look into that -- giant download !?) >>>> >>>> About one GB. >>>> >>>>> >>> Do you know if that contains a C++ compiler ? The first page before >>> it starts the actual download has "Visual C++ Compilers" grayed out >>> ... !? >>> >>> -Sebastian >>> >> Ok, apparently I had to install the "dot NET Framework 4" from >> http://msdn.microsoft.com/en-us/netframework/aa569263.aspx >> first, before then the C++ could be installed. >> But now setup.py still complains: >> error: Unable to find vcvarsall.bat >> and I think it is looking for >> C:\Program Files (x86)\Microsoft Visual Studio 9.0 >> while that file got installed in >> C:\Program Files (x86)\Microsoft Visual Studio 10.0 >> I don't know how to get the "log.debug" messages from the setup.py >> script activated... >> ? > > I got the debug out by adding a "-d" > \Python27\python.exe setup.py -v build > (even though setup.py --help states that --verbose should be already > the default, well...) > > Then I mentioned the environment variable %VS90COMNTOOLS% > which I then set to > $$>set VS90COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio > 10.0\VC\bin > > But now I'm getting a traceback: > File "C:\Python27\lib\distutils\msvc9compiler.py", line 469, in compile > self.initialize() > File "C:\Python27\lib\distutils\msvc9compiler.py", line 379, in initialize > vc_env = query_vcvarsall(VERSION, plat_spec) > File "C:\Python27\lib\distutils\msvc9compiler.py", line 295, in > query_vcvarsall > raise ValueError(str(list(result.keys()))) > ValueError: [u'path'] > > Well, still trying .... > Cheers, > Sebastian > Now, I renamed the file C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\amd64\vcvarsamd64.bat (as mentioned in http://mattptr.net/2010/07/28/building-python-extensions-in-a-modern-windows-environment/) to vcvars64.bat and moved it to C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64
The compiler races through and I end up getting linker problems: LINK : error LNK2001: unresolved external symbol init_sebmodule We'll see, Sebastian _______________________________________________ NumPy-Discussion mailing list [email protected] http://mail.scipy.org/mailman/listinfo/numpy-discussion
