Re: [f2py] user fortran type declaration
Pearu Peterson <[email protected]> Fri, 03 Sep 2010 09:19:19 +0300
| Newsgroups | gmane.comp.python.f2py.user |
|---|---|
| Message-ID | <[email protected]> |
On 09/03/2010 02:54 AM, Xavier Barthelemy wrote: > 2010/9/2 Pearu Peterson<[email protected]>: >>> I wrap it using >>> f2py --fcompiler=intelem -c -m Test Test.f --opt=" -I<APPRECLIBDIR> >>> -larprecmod -larprec -larprec_f_main -mp" --no-lower >>> where libarprecmod.a libarprec. libarprec_f_main.a are my module >> >> Perhaps `-mp` should read `-lmp`? > > nope, -mp is an intel fortran compiler option that maintain floating > point precision Still, can you determine which library defines mprealmod_mp_mpeq_? I would always start from that when having undefined symbol problems. >> >>> It compiles, but when I type in python >>> >>> then When I look at the ARPREC documentation, it says: >>> f -> o : ifort Test-f -c Test.o -I<APPRECLIBDIR> -mp >>> o -> exec: gcc -o test Test.o -L<ARPRECLIBDIR> -l<ARPRECLIBS> >>> -L<BunchOfLibDir> -lifport -lifcore -limf -lsvml -lm -lipgo -lirc >>> -lirc_s -ldl >>> > > I made a mistake, to link everything have to compile with g++, not gcc > how can i force f2py to use it? > the thing is the test program is working when I compile it, but not > with f2py. I understand I have to compile it with g++. > Have you got a solution? There is no direct solution. However, though I don't see how that would fix the original problem, you can try the following: 1) build extension module with f2py as above 2) copy the linking command of the f2py build output and replace gcc with g++ and rerun the linking command. This way you can test whether the new extension module linked with g++ imports or not. HTH, Pearu