Re: [f2py] f2py + ifort + openmp
Ee Y <[email protected]> Sun, 20 Jan 2013 22:10:42 +0000 (GMT)
| Newsgroups | gmane.comp.python.f2py.user |
|---|---|
| Message-ID | <[email protected]> |
--===============8211417039365064287== Content-Type: multipart/alternative; boundary="-1315625436-378573934-1358719842=:91291" ---1315625436-378573934-1358719842=:91291 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Dear Ethan,=0A=0Athanks for bearing with me. I was not sure about where to = add the -fPIC option, so:=0A=0A1) I tried to add the -fPIC option to the --= opt flag, but that's the output of the make command=0A=0Af2py --fcompiler= =3Dintelem --f90flags=3D'-fpp -openmp' -lguide --opt=3D'-fast -fPIC -O3' -D= F2PY_REPORT_ON_ARRAY_COPY=3D1 -c -m moduleomp moduleomp.f90 only: paral := =0Arunning build=0Arunning config_cc=0Aunifing config_cc, config, build_cli= b, build_ext, build commands --compiler options=0Arunning config_fc=0Aunifi= ng config_fc, config, build_clib, build_ext, build commands --fcompiler opt= ions=0Arunning build_src=0Abuild_src=0Abuilding extension "moduleomp" sourc= es=0Af2py options: ['only:', 'paral', ':']=0Af2py:> /tmp/tmpFqUG_Z/src.linu= x-x86_64-2.7/moduleompmodule.c=0Acreating /tmp/tmpFqUG_Z=0Acreating /tmp/tm= pFqUG_Z/src.linux-x86_64-2.7=0AReading fortran codes...=0AReading file 'mod= uleomp.f90' (format:free)=0APost-processing...=0ABlock: moduleomp=0ABlock: = moduleomp=0ABlock: paral=0APost-processing (stage 2)...=0ABlock: moduleomp= =0ABlock: unknown_interface=0ABlock: moduleomp=0ABlock: paral=0ABuilding mo= dules...=0ABuilding module "moduleomp"...=0AConstructing F90 module support= for "moduleomp"...=0AConstructing wrapper function "moduleomp.paral"...=0A= =A0nthreads,thread_id =3D paral()=0AWrote C/API module "moduleomp" to file= "/tmp/tmpFqUG_Z/src.linux-x86_64-2.7/moduleompmodule.c"=0AFortran 90 wrapp= ers are saved to "/tmp/tmpFqUG_Z/src.linux-x86_64-2.7/moduleomp-f2pywrapper= s2.f90"=0A=A0 adding '/tmp/tmpFqUG_Z/src.linux-x86_64-2.7/fortranobject.c' = to sources.=0A=A0 adding '/tmp/tmpFqUG_Z/src.linux-x86_64-2.7' to include_d= irs.=0Acopying /usr/import/epd/lib/python2.7/site-packages/numpy/f2py/src/f= ortranobject.c -> /tmp/tmpFqUG_Z/src.linux-x86_64-2.7=0Acopying /usr/import= /epd/lib/python2.7/site-packages/numpy/f2py/src/fortranobject.h -> /tmp/tmp= FqUG_Z/src.linux-x86_64-2.7=0A=A0 adding '/tmp/tmpFqUG_Z/src.linux-x86_64-2= .7/moduleomp-f2pywrappers2.f90' to sources.=0Abuild_src: building npy-pkg c= onfig files=0Arunning build_ext=0Acustomize UnixCCompiler=0Acustomize UnixC= Compiler using build_ext=0Acustomize IntelEM64TFCompiler=0AFound executable= /usr/import/intel/fce/9.0/bin/ifort=0Acustomize IntelEM64TFCompiler using = build_ext=0Abuilding 'moduleomp' extension=0Acompiling C sources=0AC compil= er: gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -O2 -fPIC=0A=0Acreati= ng /tmp/tmpFqUG_Z/tmp=0Acreating /tmp/tmpFqUG_Z/tmp/tmpFqUG_Z=0Acreating /t= mp/tmpFqUG_Z/tmp/tmpFqUG_Z/src.linux-x86_64-2.7=0Acompile options: '-DF2PY_= REPORT_ON_ARRAY_COPY=3D1 -I/tmp/tmpFqUG_Z/src.linux-x86_64-2.7 -I/usr/impor= t/epd/lib/python2.7/site-packages/numpy/core/include -I/usr/import/epd/incl= ude/python2.7 -c'=0Agcc: /tmp/tmpFqUG_Z/src.linux-x86_64-2.7/moduleompmodul= e.c=0Agcc: /tmp/tmpFqUG_Z/src.linux-x86_64-2.7/fortranobject.c=0Acompiling = Fortran 90 module sources=0AFortran f77 compiler: /usr/import/intel/fce/9.0= /bin/ifort -FI -w90 -w95 -KPIC -cm -fast -fPIC -O3 -tpp7 -xW=0AFortran f90 = compiler: /usr/import/intel/fce/9.0/bin/ifort -FR -fpp -openmp -KPIC -cm -f= ast -fPIC -O3 -tpp7 -xW=0AFortran fix compiler: /usr/import/intel/fce/9.0/b= in/ifort -FI -fpp -openmp -KPIC -cm -fast -fPIC -O3 -tpp7 -xW=0Acompile opt= ions: '-DF2PY_REPORT_ON_ARRAY_COPY=3D1 -I/tmp/tmpFqUG_Z/src.linux-x86_64-2.= 7 -I/usr/import/epd/lib/python2.7/site-packages/numpy/core/include -I/usr/i= mport/epd/include/python2.7 -c'=0Aextra options: '-module /tmp/tmpFqUG_Z/ -= I/tmp/tmpFqUG_Z/'=0Aifort:f90: moduleomp.f90=0Aifort: Command line warning:= -fast overrides any subsequent processor specific option. =A0'-xW' has no = effect=0Acompiling Fortran sources=0AFortran f77 compiler: /usr/import/inte= l/fce/9.0/bin/ifort -FI -w90 -w95 -KPIC -cm -fast -fPIC -O3 -tpp7 -xW=0AFor= tran f90 compiler: /usr/import/intel/fce/9.0/bin/ifort -FR -fpp -openmp -KP= IC -cm -fast -fPIC -O3 -tpp7 -xW=0AFortran fix compiler: /usr/import/intel/= fce/9.0/bin/ifort -FI -fpp -openmp -KPIC -cm -fast -fPIC -O3 -tpp7 -xW=0Aco= mpile options: '-DF2PY_REPORT_ON_ARRAY_COPY=3D1 -I/tmp/tmpFqUG_Z/src.linux-= x86_64-2.7 -I/usr/import/epd/lib/python2.7/site-packages/numpy/core/include= -I/usr/import/epd/include/python2.7 -c'=0Aextra options: '-module /tmp/tmp= FqUG_Z/ -I/tmp/tmpFqUG_Z/'=0Aifort:f90: /tmp/tmpFqUG_Z/src.linux-x86_64-2.7= /moduleomp-f2pywrappers2.f90=0Aifort: Command line warning: -fast overrides= any subsequent processor specific option. =A0'-xW' has no effect=0A/usr/im= port/intel/fce/9.0/bin/ifort -shared -shared -nofor_main /tmp/tmpFqUG_Z/tmp= /tmpFqUG_Z/src.linux-x86_64-2.7/moduleompmodule.o /tmp/tmpFqUG_Z/tmp/tmpFqU= G_Z/src.linux-x86_64-2.7/fortranobject.o /tmp/tmpFqUG_Z/moduleomp.o /tmp/tm= pFqUG_Z/tmp/tmpFqUG_Z/src.linux-x86_64-2.7/moduleomp-f2pywrappers2.o -L/usr= /import/epd/lib -lguide -lpython2.7 -o ./moduleomp.so=0Amoduleomp.f90(13) := (col. 6) remark: OpenMP DEFINED REGION WAS PARALLELIZED.=0Ald: /tmp/ipo_if= ortGwyhCh.o: relocation R_X86_64_PC32 against symbol `_moduleomp_mp_paral__= 13__par_region0' can not be used when making a shared object; recompile wit= h -fPIC=0Ald: final link failed: Bad value=0Amoduleomp.f90(13) : (col. 6) r= emark: OpenMP DEFINED REGION WAS PARALLELIZED.=0Ald: /tmp/ipo_ifortGwyhCh.o= : relocation R_X86_64_PC32 against symbol `_moduleomp_mp_paral__13__par_reg= ion0' can not be used when making a shared object; recompile with -fPIC=0Al= d: final link failed: Bad value=0Aerror: Command "/usr/import/intel/fce/9.0= /bin/ifort -shared -shared -nofor_main /tmp/tmpFqUG_Z/tmp/tmpFqUG_Z/src.lin= ux-x86_64-2.7/moduleompmodule.o /tmp/tmpFqUG_Z/tmp/tmpFqUG_Z/src.linux-x86_= 64-2.7/fortranobject.o /tmp/tmpFqUG_Z/moduleomp.o /tmp/tmpFqUG_Z/tmp/tmpFqU= G_Z/src.linux-x86_64-2.7/moduleomp-f2pywrappers2.o -L/usr/import/epd/lib -l= guide -lpython2.7 -o ./moduleomp.so" failed with exit status 1=0Amake: *** = [moduleomp] Error 1=0A=0A=0A=0A2) Then I tried to add the option to --f90fl= ags . Again, it does not compile=0A=0Af2py --fcompiler=3Dintelem --f90flags= =3D'-fpp -openmp -fPIC' -lguide --opt=3D'-fast -O3' -DF2PY_REPORT_ON_ARRAY_= COPY=3D1 -c -m moduleomp moduleomp.f90 only: paral :=0Arunning build=0Arunn= ing config_cc=0Aunifing config_cc, config, build_clib, build_ext, build com= mands --compiler options=0Arunning config_fc=0Aunifing config_fc, config, b= uild_clib, build_ext, build commands --fcompiler options=0Arunning build_sr= c=0Abuild_src=0Abuilding extension "moduleomp" sources=0Af2py options: ['on= ly:', 'paral', ':']=0Af2py:> /tmp/tmp_YINTS/src.linux-x86_64-2.7/moduleompm= odule.c=0Acreating /tmp/tmp_YINTS=0Acreating /tmp/tmp_YINTS/src.linux-x86_6= 4-2.7=0AReading fortran codes...=0AReading file 'moduleomp.f90' (format:fre= e)=0APost-processing...=0ABlock: moduleomp=0ABlock: moduleomp=0ABlock: para= l=0APost-processing (stage 2)...=0ABlock: moduleomp=0ABlock: unknown_interf= ace=0ABlock: moduleomp=0ABlock: paral=0ABuilding modules...=0ABuilding modu= le "moduleomp"...=0AConstructing F90 module support for "moduleomp"...=0ACo= nstructing wrapper function "moduleomp.paral"...=0A =A0nthreads,thread_id = =3D paral()=0AWrote C/API module "moduleomp" to file "/tmp/tmp_YINTS/src.li= nux-x86_64-2.7/moduleompmodule.c"=0AFortran 90 wrappers are saved to "/tmp/= tmp_YINTS/src.linux-x86_64-2.7/moduleomp-f2pywrappers2.f90"=0A=A0 adding '/= tmp/tmp_YINTS/src.linux-x86_64-2.7/fortranobject.c' to sources.=0A=A0 addin= g '/tmp/tmp_YINTS/src.linux-x86_64-2.7' to include_dirs.=0Acopying /usr/imp= ort/epd/lib/python2.7/site-packages/numpy/f2py/src/fortranobject.c -> /tmp/= tmp_YINTS/src.linux-x86_64-2.7=0Acopying /usr/import/epd/lib/python2.7/site= -packages/numpy/f2py/src/fortranobject.h -> /tmp/tmp_YINTS/src.linux-x86_64= -2.7=0A=A0 adding '/tmp/tmp_YINTS/src.linux-x86_64-2.7/moduleomp-f2pywrappe= rs2.f90' to sources.=0Abuild_src: building npy-pkg config files=0Arunning b= uild_ext=0Acustomize UnixCCompiler=0Acustomize UnixCCompiler using build_ex= t=0Acustomize IntelEM64TFCompiler=0AFound executable /usr/import/intel/fce/= 9.0/bin/ifort=0Acustomize IntelEM64TFCompiler using build_ext=0Abuilding 'm= oduleomp' extension=0Acompiling C sources=0AC compiler: gcc -pthread -fno-s= trict-aliasing -g -O2 -DNDEBUG -O2 -fPIC=0A=0Acreating /tmp/tmp_YINTS/tmp= =0Acreating /tmp/tmp_YINTS/tmp/tmp_YINTS=0Acreating /tmp/tmp_YINTS/tmp/tmp_= YINTS/src.linux-x86_64-2.7=0Acompile options: '-DF2PY_REPORT_ON_ARRAY_COPY= =3D1 -I/tmp/tmp_YINTS/src.linux-x86_64-2.7 -I/usr/import/epd/lib/python2.7/= site-packages/numpy/core/include -I/usr/import/epd/include/python2.7 -c'=0A= gcc: /tmp/tmp_YINTS/src.linux-x86_64-2.7/moduleompmodule.c=0Agcc: /tmp/tmp_= YINTS/src.linux-x86_64-2.7/fortranobject.c=0Acompiling Fortran 90 module so= urces=0AFortran f77 compiler: /usr/import/intel/fce/9.0/bin/ifort -FI -w90 = -w95 -KPIC -cm -fast -O3 -tpp7 -xW=0AFortran f90 compiler: /usr/import/inte= l/fce/9.0/bin/ifort -FR -fpp -openmp -fPIC -KPIC -cm -fast -O3 -tpp7 -xW=0A= Fortran fix compiler: /usr/import/intel/fce/9.0/bin/ifort -FI -fpp -openmp = -fPIC -KPIC -cm -fast -O3 -tpp7 -xW=0Acompile options: '-DF2PY_REPORT_ON_AR= RAY_COPY=3D1 -I/tmp/tmp_YINTS/src.linux-x86_64-2.7 -I/usr/import/epd/lib/py= thon2.7/site-packages/numpy/core/include -I/usr/import/epd/include/python2.= 7 -c'=0Aextra options: '-module /tmp/tmp_YINTS/ -I/tmp/tmp_YINTS/'=0Aifort:= f90: moduleomp.f90=0Aifort: Command line warning: -fast overrides any subse= quent processor specific option. =A0'-xW' has no effect=0Acompiling Fortran= sources=0AFortran f77 compiler: /usr/import/intel/fce/9.0/bin/ifort -FI -w= 90 -w95 -KPIC -cm -fast -O3 -tpp7 -xW=0AFortran f90 compiler: /usr/import/i= ntel/fce/9.0/bin/ifort -FR -fpp -openmp -fPIC -KPIC -cm -fast -O3 -tpp7 -xW= =0AFortran fix compiler: /usr/import/intel/fce/9.0/bin/ifort -FI -fpp -open= mp -fPIC -KPIC -cm -fast -O3 -tpp7 -xW=0Acompile options: '-DF2PY_REPORT_ON= _ARRAY_COPY=3D1 -I/tmp/tmp_YINTS/src.linux-x86_64-2.7 -I/usr/import/epd/lib= /python2.7/site-packages/numpy/core/include -I/usr/import/epd/include/pytho= n2.7 -c'=0Aextra options: '-module /tmp/tmp_YINTS/ -I/tmp/tmp_YINTS/'=0Aifo= rt:f90: /tmp/tmp_YINTS/src.linux-x86_64-2.7/moduleomp-f2pywrappers2.f90=0Ai= fort: Command line warning: -fast overrides any subsequent processor specif= ic option. =A0'-xW' has no effect=0A/usr/import/intel/fce/9.0/bin/ifort -sh= ared -shared -nofor_main /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-x86_64-2.7/= moduleompmodule.o /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-x86_64-2.7/fortran= object.o /tmp/tmp_YINTS/moduleomp.o /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-= x86_64-2.7/moduleomp-f2pywrappers2.o -L/usr/import/epd/lib -lguide -lpython= 2.7 -o ./moduleomp.so=0Amoduleomp.f90(13) : (col. 6) remark: OpenMP DEFINED= REGION WAS PARALLELIZED.=0Ald: /tmp/ipo_ifortR7vdL6.o: relocation R_X86_64= _PC32 against symbol `_moduleomp_mp_paral__13__par_region0' can not be used= when making a shared object; recompile with -fPIC=0Ald: final link failed:= Bad value=0Amoduleomp.f90(13) : (col. 6) remark: OpenMP DEFINED REGION WAS= PARALLELIZED.=0Ald: /tmp/ipo_ifortR7vdL6.o: relocation R_X86_64_PC32 again= st symbol `_moduleomp_mp_paral__13__par_region0' can not be used when makin= g a shared object; recompile with -fPIC=0Ald: final link failed: Bad value= =0Aerror: Command "/usr/import/intel/fce/9.0/bin/ifort -shared -shared -nof= or_main /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-x86_64-2.7/moduleompmodule.o= /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-x86_64-2.7/fortranobject.o /tmp/tmp= _YINTS/moduleomp.o /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-x86_64-2.7/module= omp-f2pywrappers2.o -L/usr/import/epd/lib -lguide -lpython2.7 -o ./moduleom= p.so" failed with exit status 1=0Amake: *** [moduleomp] Error 1=0A=0AFinall= y I "converted" the fortran module in a program and yes, I can compile it w= ith=A0ifort -openmp moduleomp.f90 -o moduleomp=0A=0AThank you again for you= r support!=0An.=0A>That f90 program compiles for me, but I'm using a differ= ent version of ifort on a computer with different libraries etc.=A0 Did you= try adding the -fPIC option as suggested by this error message? =0A=0A>htt= p://jaytaylor.com/blog/2010/10/06/howto-fix-fpic-errors/=0A=0A>Can you comp= ile moduleomp.f90 directly with ifort with a dummy program to call it? (i.e= . take f2py out of the equation)=0A=0A=0AOn Jan 18, 2013, at 3:59 AM, Ee Y = <[email protected]> wrote:=0A=0A> ld: /tmp/ipo_ifortvrTUJH.o: relocation R_= X86_64_PC32 against symbol `_moduleomp_mp_paral__16__par_region0' can not b= e used when making a shared object; recompile=0A>=A0 with -fPIC=0A> =0A> ld= : final link failed: Bad value=0A=0A=0A____________________________________= ___________=0Af2py-users mailing list=0Af2py-users-Y4l6ocDipWCuvFJfX82//[email protected]=0Ahttp://cen= s.ioc.ee/mailman/listinfo/f2py-users ---1315625436-378573934-1358719842=:91291 Content-Type: text/html; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable <html><body><div style=3D"color:#000; background-color:#fff; font-family:ti= mes new roman, new york, times, serif;font-size:12pt"><div style=3D"font-fa= mily: 'times new roman', 'new york', times, serif; font-size: 12pt;"><span>= Dear Ethan,</span></div><div style=3D"font-family: 'times new roman', 'new = york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color= : transparent; font-style: normal;"><span><br></span></div><div style=3D"fo= nt-family: 'times new roman', 'new york', times, serif; font-size: 16px; co= lor: rgb(0, 0, 0); background-color: transparent; font-style: normal;"><spa= n><span class=3D"Apple-tab-span" style=3D"white-space:pre">=09</span>thanks= for bearing with me. I was not sure about where to add the -fPIC option, s= o:</span></div><div style=3D"font-family: 'times new roman', 'new york', ti= mes, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transpa= rent; font-style: normal;"><span><br></span></div><div style=3D"font-family= : 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0)= ; background-color: transparent; font-style: normal;"><span>1) I tried to a= dd the -fPIC option to the --opt flag, but that's the output of the make co= mmand</span></div><div style=3D"font-family: 'times new roman', 'new york',= times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: tran= sparent; font-style: normal;"><span><br></span></div><div style=3D"backgrou= nd-color: transparent;"><span><div style=3D"background-color: transparent;"= >f2py --fcompiler=3Dintelem --f90flags=3D'-fpp -openmp' -lguide --opt=3D'-f= ast -fPIC -O3' -DF2PY_REPORT_ON_ARRAY_COPY=3D1 -c -m moduleomp moduleomp.f9= 0 only: paral :</div><div style=3D"background-color: transparent;">running = build</div><div style=3D"background-color: transparent;">running config_cc<= /div><div style=3D"background-color: transparent;">unifing config_cc, confi= g, build_clib, build_ext, build commands --compiler options</div><div style=3D"background-color: transparent;">running config_fc</div><div style= =3D"background-color: transparent;">unifing config_fc, config, build_clib, = build_ext, build commands --fcompiler options</div><div style=3D"background= -color: transparent;">running build_src</div><div style=3D"background-color= : transparent;">build_src</div><div style=3D"background-color: transparent;= ">building extension "moduleomp" sources</div><div style=3D"background-colo= r: transparent;">f2py options: ['only:', 'paral', ':']</div><div style=3D"b= ackground-color: transparent;">f2py:> /tmp/tmpFqUG_Z/src.linux-x86_64-2.= 7/moduleompmodule.c</div><div style=3D"background-color: transparent;">crea= ting /tmp/tmpFqUG_Z</div><div style=3D"background-color: transparent;">crea= ting /tmp/tmpFqUG_Z/src.linux-x86_64-2.7</div><div style=3D"background-colo= r: transparent;">Reading fortran codes...</div><div style=3D"background-col= or: transparent;"><span class=3D"Apple-tab-span" style=3D"white-space:pre">= =09</span>Reading file 'moduleomp.f90' (format:free)</div><div style=3D"background-color: tr= ansparent;">Post-processing...</div><div style=3D"background-color: transpa= rent;"><span class=3D"Apple-tab-span" style=3D"white-space:pre">=09</span>B= lock: moduleomp</div><div style=3D"background-color: transparent;"><span cl= ass=3D"Apple-tab-span" style=3D"white-space:pre">=09=09=09</span>Block: mod= uleomp</div><div style=3D"background-color: transparent;"><span class=3D"Ap= ple-tab-span" style=3D"white-space:pre">=09=09=09=09</span>Block: paral</di= v><div style=3D"background-color: transparent;">Post-processing (stage 2)..= .</div><div style=3D"background-color: transparent;"><span class=3D"Apple-t= ab-span" style=3D"white-space:pre">=09</span>Block: moduleomp</div><div sty= le=3D"background-color: transparent;"><span class=3D"Apple-tab-span" style= =3D"white-space:pre">=09=09</span>Block: unknown_interface</div><div style= =3D"background-color: transparent;"><span class=3D"Apple-tab-span" style=3D= "white-space:pre">=09=09=09</span>Block: moduleomp</div><div style=3D"background-color: transparent;"><span class=3D"Apple-tab-span" st= yle=3D"white-space:pre">=09=09=09=09</span>Block: paral</div><div style=3D"= background-color: transparent;">Building modules...</div><div style=3D"back= ground-color: transparent;"><span class=3D"Apple-tab-span" style=3D"white-s= pace:pre">=09</span>Building module "moduleomp"...</div><div style=3D"backg= round-color: transparent;"><span class=3D"Apple-tab-span" style=3D"white-sp= ace:pre">=09=09</span>Constructing F90 module support for "moduleomp"...</d= iv><div style=3D"background-color: transparent;"><span class=3D"Apple-tab-s= pan" style=3D"white-space:pre">=09=09=09</span>Constructing wrapper functio= n "moduleomp.paral"...</div><div style=3D"background-color: transparent;"><= span class=3D"Apple-tab-span" style=3D"white-space:pre">=09=09=09</span> &n= bsp;nthreads,thread_id =3D paral()</div><div style=3D"background-color: tra= nsparent;"><span class=3D"Apple-tab-span" style=3D"white-space:pre">=09</sp= an>Wrote C/API module "moduleomp" to file "/tmp/tmpFqUG_Z/src.linux-x86_64-2.7/moduleompmodule.c"</div><div style=3D= "background-color: transparent;"><span class=3D"Apple-tab-span" style=3D"wh= ite-space:pre">=09</span>Fortran 90 wrappers are saved to "/tmp/tmpFqUG_Z/s= rc.linux-x86_64-2.7/moduleomp-f2pywrappers2.f90"</div><div style=3D"backgro= und-color: transparent;"> adding '/tmp/tmpFqUG_Z/src.linux-x86_64-2.7= /fortranobject.c' to sources.</div><div style=3D"background-color: transpar= ent;"> adding '/tmp/tmpFqUG_Z/src.linux-x86_64-2.7' to include_dirs.<= /div><div style=3D"background-color: transparent;">copying /usr/import/epd/= lib/python2.7/site-packages/numpy/f2py/src/fortranobject.c -> /tmp/tmpFq= UG_Z/src.linux-x86_64-2.7</div><div style=3D"background-color: transparent;= ">copying /usr/import/epd/lib/python2.7/site-packages/numpy/f2py/src/fortra= nobject.h -> /tmp/tmpFqUG_Z/src.linux-x86_64-2.7</div><div style=3D"back= ground-color: transparent;"> adding '/tmp/tmpFqUG_Z/src.linux-x86_64-2.7/moduleomp-f2pywrappers2.f90' to sourc= es.</div><div style=3D"background-color: transparent;">build_src: building = npy-pkg config files</div><div style=3D"background-color: transparent;">run= ning build_ext</div><div style=3D"background-color: transparent;">customize= UnixCCompiler</div><div style=3D"background-color: transparent;">customize= UnixCCompiler using build_ext</div><div style=3D"background-color: transpa= rent;">customize IntelEM64TFCompiler</div><div style=3D"background-color: t= ransparent;">Found executable /usr/import/intel/fce/9.0/bin/ifort</div><div= style=3D"background-color: transparent;">customize IntelEM64TFCompiler usi= ng build_ext</div><div style=3D"background-color: transparent;">building 'm= oduleomp' extension</div><div style=3D"background-color: transparent;">comp= iling C sources</div><div style=3D"background-color: transparent;">C compil= er: gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -O2 -fPIC</div><div style=3D"background-color: transparent;"><br></div><div style=3D"backgroun= d-color: transparent;">creating /tmp/tmpFqUG_Z/tmp</div><div style=3D"backg= round-color: transparent;">creating /tmp/tmpFqUG_Z/tmp/tmpFqUG_Z</div><div = style=3D"background-color: transparent;">creating /tmp/tmpFqUG_Z/tmp/tmpFqU= G_Z/src.linux-x86_64-2.7</div><div style=3D"background-color: transparent;"= >compile options: '-DF2PY_REPORT_ON_ARRAY_COPY=3D1 -I/tmp/tmpFqUG_Z/src.lin= ux-x86_64-2.7 -I/usr/import/epd/lib/python2.7/site-packages/numpy/core/incl= ude -I/usr/import/epd/include/python2.7 -c'</div><div style=3D"background-c= olor: transparent;">gcc: /tmp/tmpFqUG_Z/src.linux-x86_64-2.7/moduleompmodul= e.c</div><div style=3D"background-color: transparent;">gcc: /tmp/tmpFqUG_Z/= src.linux-x86_64-2.7/fortranobject.c</div><div style=3D"background-color: t= ransparent;">compiling Fortran 90 module sources</div><div style=3D"backgro= und-color: transparent;">Fortran f77 compiler: /usr/import/intel/fce/9.0/bi= n/ifort -FI -w90 -w95 -KPIC -cm -fast -fPIC -O3 -tpp7 -xW</div><div style=3D"backgroun= d-color: transparent;">Fortran f90 compiler: /usr/import/intel/fce/9.0/bin/= ifort -FR -fpp -openmp -KPIC -cm -fast -fPIC -O3 -tpp7 -xW</div><div style= =3D"background-color: transparent;">Fortran fix compiler: /usr/import/intel= /fce/9.0/bin/ifort -FI -fpp -openmp -KPIC -cm -fast -fPIC -O3 -tpp7 -xW</di= v><div style=3D"background-color: transparent;">compile options: '-DF2PY_RE= PORT_ON_ARRAY_COPY=3D1 -I/tmp/tmpFqUG_Z/src.linux-x86_64-2.7 -I/usr/import/= epd/lib/python2.7/site-packages/numpy/core/include -I/usr/import/epd/includ= e/python2.7 -c'</div><div style=3D"background-color: transparent;">extra op= tions: '-module /tmp/tmpFqUG_Z/ -I/tmp/tmpFqUG_Z/'</div><div style=3D"backg= round-color: transparent;">ifort:f90: moduleomp.f90</div><div style=3D"back= ground-color: transparent;">ifort: Command line warning: -fast overrides an= y subsequent processor specific option. '-xW' has no effect</div><div style=3D"background-color: transparent;">compiling Fortran sources</div><d= iv style=3D"background-color: transparent;">Fortran f77 compiler: /usr/impo= rt/intel/fce/9.0/bin/ifort -FI -w90 -w95 -KPIC -cm -fast -fPIC -O3 -tpp7 -x= W</div><div style=3D"background-color: transparent;">Fortran f90 compiler: = /usr/import/intel/fce/9.0/bin/ifort -FR -fpp -openmp -KPIC -cm -fast -fPIC = -O3 -tpp7 -xW</div><div style=3D"background-color: transparent;">Fortran fi= x compiler: /usr/import/intel/fce/9.0/bin/ifort -FI -fpp -openmp -KPIC -cm = -fast -fPIC -O3 -tpp7 -xW</div><div style=3D"background-color: transparent;= ">compile options: '-DF2PY_REPORT_ON_ARRAY_COPY=3D1 -I/tmp/tmpFqUG_Z/src.li= nux-x86_64-2.7 -I/usr/import/epd/lib/python2.7/site-packages/numpy/core/inc= lude -I/usr/import/epd/include/python2.7 -c'</div><div style=3D"background-= color: transparent;">extra options: '-module /tmp/tmpFqUG_Z/ -I/tmp/tmpFqUG= _Z/'</div><div style=3D"background-color: transparent;">ifort:f90: /tmp/tmpFqUG_Z/src.linux-x86_64-2.7/moduleomp-f2pywrappers2.f90</div><div = style=3D"background-color: transparent;">ifort: Command line warning: -fast= overrides any subsequent processor specific option. '-xW' has no eff= ect</div><div style=3D"background-color: transparent;">/usr/import/intel/fc= e/9.0/bin/ifort -shared -shared -nofor_main /tmp/tmpFqUG_Z/tmp/tmpFqUG_Z/sr= c.linux-x86_64-2.7/moduleompmodule.o /tmp/tmpFqUG_Z/tmp/tmpFqUG_Z/src.linux= -x86_64-2.7/fortranobject.o /tmp/tmpFqUG_Z/moduleomp.o /tmp/tmpFqUG_Z/tmp/t= mpFqUG_Z/src.linux-x86_64-2.7/moduleomp-f2pywrappers2.o -L/usr/import/epd/l= ib -lguide -lpython2.7 -o ./moduleomp.so</div><div style=3D"background-colo= r: transparent;">moduleomp.f90(13) : (col. 6) remark: OpenMP DEFINED REGION= WAS PARALLELIZED.</div><div style=3D"background-color: transparent;">ld: /= tmp/ipo_ifortGwyhCh.o: relocation R_X86_64_PC32 against symbol `_moduleomp_= mp_paral__13__par_region0' can not be used when making a shared object; recompile with -fPIC</div><div style=3D"background-color: transparent;">ld= : final link failed: Bad value</div><div style=3D"background-color: transpa= rent;">moduleomp.f90(13) : (col. 6) remark: OpenMP DEFINED REGION WAS PARAL= LELIZED.</div><div style=3D"background-color: transparent;">ld: /tmp/ipo_if= ortGwyhCh.o: relocation R_X86_64_PC32 against symbol `_moduleomp_mp_paral__= 13__par_region0' can not be used when making a shared object; recompile wit= h -fPIC</div><div style=3D"background-color: transparent;">ld: final link f= ailed: Bad value</div><div style=3D"background-color: transparent;">error: = Command "/usr/import/intel/fce/9.0/bin/ifort -shared -shared -nofor_main /t= mp/tmpFqUG_Z/tmp/tmpFqUG_Z/src.linux-x86_64-2.7/moduleompmodule.o /tmp/tmpF= qUG_Z/tmp/tmpFqUG_Z/src.linux-x86_64-2.7/fortranobject.o /tmp/tmpFqUG_Z/mod= uleomp.o /tmp/tmpFqUG_Z/tmp/tmpFqUG_Z/src.linux-x86_64-2.7/moduleomp-f2pywr= appers2.o -L/usr/import/epd/lib -lguide -lpython2.7 -o ./moduleomp.so" fail= ed with exit status 1</div><div style=3D"background-color: transparent;">make= : *** [moduleomp] Error 1</div><div style=3D"background-color: transparent;= "><br></div><div style=3D"background-color: transparent; color: rgb(0, 0, 0= ); font-size: 16px; font-family: 'times new roman', 'new york', times, seri= f; font-style: normal;"><br></div><div style=3D"background-color: transpare= nt; color: rgb(0, 0, 0); font-size: 16px; font-family: 'times new roman', '= new york', times, serif; font-style: normal;"><br></div><div style=3D"backg= round-color: transparent; color: rgb(0, 0, 0); font-size: 16px; font-family= : 'times new roman', 'new york', times, serif; font-style: normal;">2) Then= I tried to add the option to --f90flags . Again, it does not compile</div>= <div style=3D"background-color: transparent; color: rgb(0, 0, 0); font-size= : 16px; font-family: 'times new roman', 'new york', times, serif; font-styl= e: normal;"><br></div><div style=3D"background-color: transparent;"><div style=3D"background-color: transparent;">f2py --fcompiler=3Dintelem --f90f= lags=3D'-fpp -openmp -fPIC' -lguide --opt=3D'-fast -O3' -DF2PY_REPORT_ON_AR= RAY_COPY=3D1 -c -m moduleomp moduleomp.f90 only: paral :</div><div style=3D= "background-color: transparent;">running build</div><div style=3D"backgroun= d-color: transparent;">running config_cc</div><div style=3D"background-colo= r: transparent;">unifing config_cc, config, build_clib, build_ext, build co= mmands --compiler options</div><div style=3D"background-color: transparent;= ">running config_fc</div><div style=3D"background-color: transparent;">unif= ing config_fc, config, build_clib, build_ext, build commands --fcompiler op= tions</div><div style=3D"background-color: transparent;">running build_src<= /div><div style=3D"background-color: transparent;">build_src</div><div styl= e=3D"background-color: transparent;">building extension "moduleomp" sources= </div><div style=3D"background-color: transparent;">f2py options: ['only:',= 'paral', ':']</div><div style=3D"background-color: transparent;">f2py:> /tmp/tmp= _YINTS/src.linux-x86_64-2.7/moduleompmodule.c</div><div style=3D"background= -color: transparent;">creating /tmp/tmp_YINTS</div><div style=3D"background= -color: transparent;">creating /tmp/tmp_YINTS/src.linux-x86_64-2.7</div><di= v style=3D"background-color: transparent;">Reading fortran codes...</div><d= iv style=3D"background-color: transparent;"><span class=3D"Apple-tab-span" = style=3D"white-space:pre">=09</span>Reading file 'moduleomp.f90' (format:fr= ee)</div><div style=3D"background-color: transparent;">Post-processing...</= div><div style=3D"background-color: transparent;"><span class=3D"Apple-tab-= span" style=3D"white-space:pre">=09</span>Block: moduleomp</div><div style= =3D"background-color: transparent;"><span class=3D"Apple-tab-span" style=3D= "white-space:pre">=09=09=09</span>Block: moduleomp</div><div style=3D"backg= round-color: transparent;"><span class=3D"Apple-tab-span" style=3D"white-sp= ace:pre">=09=09=09=09</span>Block: paral</div><div style=3D"background-color: transparent;">Post-processing (= stage 2)...</div><div style=3D"background-color: transparent;"><span class= =3D"Apple-tab-span" style=3D"white-space:pre">=09</span>Block: moduleomp</d= iv><div style=3D"background-color: transparent;"><span class=3D"Apple-tab-s= pan" style=3D"white-space:pre">=09=09</span>Block: unknown_interface</div><= div style=3D"background-color: transparent;"><span class=3D"Apple-tab-span"= style=3D"white-space:pre">=09=09=09</span>Block: moduleomp</div><div style= =3D"background-color: transparent;"><span class=3D"Apple-tab-span" style=3D= "white-space:pre">=09=09=09=09</span>Block: paral</div><div style=3D"backgr= ound-color: transparent;">Building modules...</div><div style=3D"background= -color: transparent;"><span class=3D"Apple-tab-span" style=3D"white-space:p= re">=09</span>Building module "moduleomp"...</div><div style=3D"background-= color: transparent;"><span class=3D"Apple-tab-span" style=3D"white-space:pr= e">=09=09</span>Constructing F90 module support for "moduleomp"...</div><div style=3D"background-color: transparent;"><span cl= ass=3D"Apple-tab-span" style=3D"white-space:pre">=09=09=09</span>Constructi= ng wrapper function "moduleomp.paral"...</div><div style=3D"background-colo= r: transparent;"><span class=3D"Apple-tab-span" style=3D"white-space:pre">= =09=09=09</span> nthreads,thread_id =3D paral()</div><div style=3D"ba= ckground-color: transparent;"><span class=3D"Apple-tab-span" style=3D"white= -space:pre">=09</span>Wrote C/API module "moduleomp" to file "/tmp/tmp_YINT= S/src.linux-x86_64-2.7/moduleompmodule.c"</div><div style=3D"background-col= or: transparent;"><span class=3D"Apple-tab-span" style=3D"white-space:pre">= =09</span>Fortran 90 wrappers are saved to "/tmp/tmp_YINTS/src.linux-x86_64= -2.7/moduleomp-f2pywrappers2.f90"</div><div style=3D"background-color: tran= sparent;"> adding '/tmp/tmp_YINTS/src.linux-x86_64-2.7/fortranobject.= c' to sources.</div><div style=3D"background-color: transparent;"> ad= ding '/tmp/tmp_YINTS/src.linux-x86_64-2.7' to include_dirs.</div><div style=3D"= background-color: transparent;">copying /usr/import/epd/lib/python2.7/site-= packages/numpy/f2py/src/fortranobject.c -> /tmp/tmp_YINTS/src.linux-x86_= 64-2.7</div><div style=3D"background-color: transparent;">copying /usr/impo= rt/epd/lib/python2.7/site-packages/numpy/f2py/src/fortranobject.h -> /tm= p/tmp_YINTS/src.linux-x86_64-2.7</div><div style=3D"background-color: trans= parent;"> adding '/tmp/tmp_YINTS/src.linux-x86_64-2.7/moduleomp-f2pyw= rappers2.f90' to sources.</div><div style=3D"background-color: transparent;= ">build_src: building npy-pkg config files</div><div style=3D"background-co= lor: transparent;">running build_ext</div><div style=3D"background-color: t= ransparent;">customize UnixCCompiler</div><div style=3D"background-color: t= ransparent;">customize UnixCCompiler using build_ext</div><div style=3D"bac= kground-color: transparent;">customize IntelEM64TFCompiler</div><div style=3D"background-color: transparent;">Found executable /usr/import/inte= l/fce/9.0/bin/ifort</div><div style=3D"background-color: transparent;">cust= omize IntelEM64TFCompiler using build_ext</div><div style=3D"background-col= or: transparent;">building 'moduleomp' extension</div><div style=3D"backgro= und-color: transparent;">compiling C sources</div><div style=3D"background-= color: transparent;">C compiler: gcc -pthread -fno-strict-aliasing -g -O2 -= DNDEBUG -O2 -fPIC</div><div style=3D"background-color: transparent;"><br></= div><div style=3D"background-color: transparent;">creating /tmp/tmp_YINTS/t= mp</div><div style=3D"background-color: transparent;">creating /tmp/tmp_YIN= TS/tmp/tmp_YINTS</div><div style=3D"background-color: transparent;">creatin= g /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-x86_64-2.7</div><div style=3D"back= ground-color: transparent;">compile options: '-DF2PY_REPORT_ON_ARRAY_COPY= =3D1 -I/tmp/tmp_YINTS/src.linux-x86_64-2.7 -I/usr/import/epd/lib/python2.7/site-packages/numpy/core/include -I/usr/im= port/epd/include/python2.7 -c'</div><div style=3D"background-color: transpa= rent;">gcc: /tmp/tmp_YINTS/src.linux-x86_64-2.7/moduleompmodule.c</div><div= style=3D"background-color: transparent;">gcc: /tmp/tmp_YINTS/src.linux-x86= _64-2.7/fortranobject.c</div><div style=3D"background-color: transparent;">= compiling Fortran 90 module sources</div><div style=3D"background-color: tr= ansparent;">Fortran f77 compiler: /usr/import/intel/fce/9.0/bin/ifort -FI -= w90 -w95 -KPIC -cm -fast -O3 -tpp7 -xW</div><div style=3D"background-color:= transparent;">Fortran f90 compiler: /usr/import/intel/fce/9.0/bin/ifort -F= R -fpp -openmp -fPIC -KPIC -cm -fast -O3 -tpp7 -xW</div><div style=3D"backg= round-color: transparent;">Fortran fix compiler: /usr/import/intel/fce/9.0/= bin/ifort -FI -fpp -openmp -fPIC -KPIC -cm -fast -O3 -tpp7 -xW</div><div st= yle=3D"background-color: transparent;">compile options: '-DF2PY_REPORT_ON_ARRAY_COPY=3D1 -I/tmp/tmp_YINTS/src.linux-x86_64-2.7 -I/= usr/import/epd/lib/python2.7/site-packages/numpy/core/include -I/usr/import= /epd/include/python2.7 -c'</div><div style=3D"background-color: transparent= ;">extra options: '-module /tmp/tmp_YINTS/ -I/tmp/tmp_YINTS/'</div><div sty= le=3D"background-color: transparent;">ifort:f90: moduleomp.f90</div><div st= yle=3D"background-color: transparent;">ifort: Command line warning: -fast o= verrides any subsequent processor specific option. '-xW' has no effec= t</div><div style=3D"background-color: transparent;">compiling Fortran sour= ces</div><div style=3D"background-color: transparent;">Fortran f77 compiler= : /usr/import/intel/fce/9.0/bin/ifort -FI -w90 -w95 -KPIC -cm -fast -O3 -tp= p7 -xW</div><div style=3D"background-color: transparent;">Fortran f90 compi= ler: /usr/import/intel/fce/9.0/bin/ifort -FR -fpp -openmp -fPIC -KPIC -cm -= fast -O3 -tpp7 -xW</div><div style=3D"background-color: transparent;">Fortr= an fix compiler: /usr/import/intel/fce/9.0/bin/ifort -FI -fpp -openmp -fPIC -KPIC= -cm -fast -O3 -tpp7 -xW</div><div style=3D"background-color: transparent;"= >compile options: '-DF2PY_REPORT_ON_ARRAY_COPY=3D1 -I/tmp/tmp_YINTS/src.lin= ux-x86_64-2.7 -I/usr/import/epd/lib/python2.7/site-packages/numpy/core/incl= ude -I/usr/import/epd/include/python2.7 -c'</div><div style=3D"background-c= olor: transparent;">extra options: '-module /tmp/tmp_YINTS/ -I/tmp/tmp_YINT= S/'</div><div style=3D"background-color: transparent;">ifort:f90: /tmp/tmp_= YINTS/src.linux-x86_64-2.7/moduleomp-f2pywrappers2.f90</div><div style=3D"b= ackground-color: transparent;">ifort: Command line warning: -fast overrides= any subsequent processor specific option. '-xW' has no effect</div><= div style=3D"background-color: transparent;">/usr/import/intel/fce/9.0/bin/= ifort -shared -shared -nofor_main /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-x8= 6_64-2.7/moduleompmodule.o /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-x86_64-2.7/fortranobject.o /tmp/tmp= _YINTS/moduleomp.o /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-x86_64-2.7/module= omp-f2pywrappers2.o -L/usr/import/epd/lib -lguide -lpython2.7 -o ./moduleom= p.so</div><div style=3D"background-color: transparent;">moduleomp.f90(13) := (col. 6) remark: OpenMP DEFINED REGION WAS PARALLELIZED.</div><div style= =3D"background-color: transparent;">ld: /tmp/ipo_ifortR7vdL6.o: relocation = R_X86_64_PC32 against symbol `_moduleomp_mp_paral__13__par_region0' can not= be used when making a shared object; recompile with -fPIC</div><div style= =3D"background-color: transparent;">ld: final link failed: Bad value</div><= div style=3D"background-color: transparent;">moduleomp.f90(13) : (col. 6) r= emark: OpenMP DEFINED REGION WAS PARALLELIZED.</div><div style=3D"backgroun= d-color: transparent;">ld: /tmp/ipo_ifortR7vdL6.o: relocation R_X86_64_PC32= against symbol `_moduleomp_mp_paral__13__par_region0' can not be used when making a shared object; recompile with -fPIC</div><div style=3D"background= -color: transparent;">ld: final link failed: Bad value</div><div style=3D"b= ackground-color: transparent;">error: Command "/usr/import/intel/fce/9.0/bi= n/ifort -shared -shared -nofor_main /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-= x86_64-2.7/moduleompmodule.o /tmp/tmp_YINTS/tmp/tmp_YINTS/src.linux-x86_64-= 2.7/fortranobject.o /tmp/tmp_YINTS/moduleomp.o /tmp/tmp_YINTS/tmp/tmp_YINTS= /src.linux-x86_64-2.7/moduleomp-f2pywrappers2.o -L/usr/import/epd/lib -lgui= de -lpython2.7 -o ./moduleomp.so" failed with exit status 1</div><div style= =3D"background-color: transparent;">make: *** [moduleomp] Error 1</div><div= style=3D"background-color: transparent;"><br></div><div style=3D"backgroun= d-color: transparent; color: rgb(0, 0, 0); font-size: 16px; font-family: 't= imes new roman', 'new york', times, serif; font-style: normal;"></div></div= ></span></div><div style=3D"font-family: 'times new roman', 'new york', tim= es, serif; font-size: 12pt;"><div style=3D"font-family: 'times new roman', 'ne= w york', times, serif; font-size: 12pt;"><div dir=3D"ltr">Finally I "conver= ted" the fortran module in a program and yes, I can compile it with if= ort -openmp moduleomp.f90 -o moduleomp</div><div dir=3D"ltr"><br></div><div= dir=3D"ltr">Thank you again for your support!</div><div dir=3D"ltr">n.</di= v><div dir=3D"ltr"><br></div>>That f90 program compiles for me, but I'm = using a different version of ifort on a computer with different libraries e= tc. Did you try adding the -fPIC option as suggested by this error me= ssage? <br><br>><a href=3D"http://jaytaylor.com/blog/2010/10/06/howto-fi= x-fpic-errors/" target=3D"_blank">http://jaytaylor.com/blog/2010/10/06/howt= o-fix-fpic-errors/</a><br><br>>Can you compile moduleomp.f90 directly wi= th ifort with a dummy program to call it? (i.e. take f2py out of the equati= on)<br><br><br>On Jan 18, 2013, at 3:59 AM, Ee Y <<a ymailto=3D"mailto:[email protected]" href=3D"mailto:[email protected]">noc= [email protected]</a>> wrote:<br><br>> ld: /tmp/ipo_ifortvrTUJH.o: reloc= ation R_X86_64_PC32 against symbol `_moduleomp_mp_paral__16__par_region0' c= an not be used when making a shared object; recompile<br>> with -f= PIC<br>> <br>> ld: final link failed: Bad value<br><br><br>__________= _____________________________________<br>f2py-users mailing list<br><a ymai= lto=3D"mailto:f2py-users-Y4l6ocDipWCuvFJfX82//[email protected]" href=3D"mailto:f2py-users-Y4l6ocDipWCuvFJfX82//[email protected]= ">f2py-users-Y4l6ocDipWCuvFJfX82//[email protected]</a><br><a href=3D"http://cens.ioc.ee/mailman/listi= nfo/f2py-users" target=3D"_blank">http://cens.ioc.ee/mailman/listinfo/f2py-= users</a><br><br><br> </div> </div> </div></body></html> ---1315625436-378573934-1358719842=:91291-- --===============8211417039365064287== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ f2py-users mailing list f2py-users-Y4l6ocDipWCuvFJfX82//[email protected] http://cens.ioc.ee/mailman/listinfo/f2py-users --===============8211417039365064287==--