From: Joaquim L. <jl...@ua...> - 2013-04-03 21:44:02
|
Getting close, ... but asymptotically Removed the damage_modelling dir from test but got a crash right at beginning EEEEEEEE.Constructing Delaunay triangulation by divide-and-conquer method. Writing vertices. Writing triangles. Statistics: Input vertices: 6 Mesh vertices: 6 Mesh triangles: 4 Mesh edges: 9 Mesh exterior boundary edges: 6 I'm not surprised by this because during the compilation I got lots (hundreds) of this type warnings Trying to compile c-extension mesh_engine_c_layer.c in c:\SVN\anuga_core\source\anuga\mesh_engine triangle.c: In function 'printtriangle': triangle.c:3678:50: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] triangle.c:3680:3: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] ... We also use 'triangle.c' in GMT and I have no problems compiling it in 64 bits but I use the MSVC compilers The last post at stackoverflow mentioned at the end that " I find you need to define MS_WIN64 as well as WIN32,..." Maybe this is relevant here no? How do I set the "MS_WIN64" in compile_all.py? > > Hi Joaquim, > > Looks like you are getting very close to success. > > The error you are getting with the test_all.py is related to the code > in damage_modelling\inundation_damage.py using the Scientific Python > interpolation function. I didn't realise that any other part of > Scientific python (other than the netcdf module) was used in anuga. I > think (as long as you don't use any facilities from the > anuga.damage_modelling module) it would be ok to exclude testing that > directory. > > You add a directory to be excluded from the tests by adding the that > directory name to the "excluded_dirs" list in the test_all.py script > in the anuga directory (not the one in anuga_core). > > Then hopefully the other tests will succeed. > > Cheers > Steve > > On 4/04/2013 4:15 AM, Joaquim Luis wrote: >> Steve, >> >> The problem must revolve about that issue but it's not so >> straightforward. I am using 64 bits version of both gcc and python >> (portable versions are wonderful for that), see >> >> /c/SVN/anuga_core> gcc -v >> Using built-in specs. >> COLLECT_GCC=C:\MinGW\MinGW-w64_64_bit\bin\gcc.exe >> COLLECT_LTO_WRAPPER=c:/mingw/mingw-w64_64_bit/bin/../libexec/gcc/x86_64-w64-mingw32/4.7.2/lto-wrapper.exe >> Target: x86_64-w64-mingw32 >> >> /c/SVN/anuga_core> python --h >> Unknown option: -- >> usage: c:\programs\WinPython2.7.3_64\python-2.7.3.amd64\python.exe >> [option] ... [-c cmd | -m mod | file | -] [arg] ... >> >> So I tried by including the referred chunk of modsupport.h in one of >> the complaining codes, and the result was the same (I mean the same >> error) >> |#if SIZEOF_SIZE_T != SIZEOF_INT >> #define Py_InitModule4 Py_InitModule4_64 >> #endif| >> >> at this point I would say that the problem lies on the SIZEOF_SIZE_T >> or SIZEOF_INT macros >> Indeed, if do it this way (and insert it in all complaining .c) than >> I'm able to compile till the end >> >> #if !defined(Py_InitModule4) >> #define Py_InitModule4 Py_InitModule4_64 >> #endif >> >> However, running the tests fail with >> >> Traceback (most recent call last): >> File "test_all.py", line 13, in <module> >> --verbose same as above >> File "test_all.py", line 224, in <module> >> suite = regressionTest(options.quiet) >> File "test_all.py", line 157, in regressionTest >> modules = map(__import__, moduleNames) >> File >> "c:\SVN\anuga_core\source\anuga\damage_modelling\test_inundation_damage.py", >> line 11, in <module> >> from inundation_damage import * >> File >> "c:\SVN\anuga_core\source\anuga\damage_modelling\inundation_damage.py", >> line 8, in <module> >> from Scientific.Functions.Interpolation import InterpolatingFunction >> ImportError: No module named Scientific.Functions.Interpolation >> >> >> >>> Hi Joaquim, >>> >>> I found this link >>> http://stackoverflow.com/questions/3778370/python-extensions-for-win64-via-gcc >>> >>> Maybe our compile.py script is finding a 32bit version of python (and >>> hence its include file and python library) which is then causing this >>> problem. >>> >>> Cheers >>> Steve >>> >>> >>> >>> >>> On 03/04/13 08:10, Joaquim Luis wrote: >>>> Hi Steve, >>>> >>>> Meanwhile I made another experiment. I used the portable WinPython >>>> 'installation' in which and did not have to install Scientific Python. >>>> >>>> But on the other hand, the attempt to build a 64 bits version ended >>>> shortly after >>>> >>>> --------------------------------------- >>>> Trying to compile c-extension quad_tree.c in >>>> c:\SVN\anuga_core\source\anuga\utilities >>>> C extension quad_tree.c OK >>>> >>>> --------------------------------------- >>>> Trying to compile c-extension sparse_dok.c in >>>> c:\SVN\anuga_core\source\anuga\utilities >>>> C extension sparse_dok.c OK >>>> >>>> --------------------------------------- >>>> Trying to compile c-extension sparse_csr.c in >>>> c:\SVN\anuga_core\source\anuga\utilities >>>> C extension sparse_csr.c OK >>>> >>>> --------------------------------------- >>>> Trying to compile c-extension cg_ext.c in >>>> c:\SVN\anuga_core\source\anuga\utilities >>>> cg_ext.o:cg_ext.c:(.text+0x1d15): undefined reference to >>>> `__imp_Py_InitModule4' >>>> collect2.exe: error: ld returned 1 exit status >>>> Traceback (most recent call last): >>>> File "compile_all.py", line 24, in<module> >>>> execfile('compile.py') >>>> File "compile.py", line 507, in<module> >>>> raise Exception(msg) >>>> Exception: Could not compile C extension cg_ext.c >>>> Could not link cg_ext - please try manually >>>> >> > > > -- > +--------------------------------------------------------------------+ > | Steve Roberts | My Office: (61)(2) 6125 4445 | > | Department of Mathematics | Math Office: (61)(2) 6125 2908 | > | Mathematical Sciences Institute| Fax: (61)(2) 6125 4984 | > | John Dedman Building #27 |mailto:ste...@an... | > | Australian National University |http://www.maths.anu.edu.au/~steve| > | Canberra ACT 0200 AUSTRALIA | ANU CRICOS # 00120C | > +--------------------------------------------------------------------+ > |