On Thu, Jan 9, 2014 at 3:32 PM, Qin Lu <[email protected]> wrote:
> Can I specify the what version of Hypre to download? Do I need to use > --with-hypre=1 and specify --with-hypre-dir? It will be nice if you may > point me to a sample setting of configure options using --download-hypre. > No. That is the only option. Matt > > Thanks, > Qin > > > On Thursday, January 9, 2014 3:07 PM, Matthew Knepley <[email protected]> > wrote: > On Thu, Jan 9, 2014 at 3:05 PM, Qin Lu <[email protected]> wrote: > > Is the linker ld compitable with Intel compilers? > > If I use --download-hypre=1, will it download the 32-bit Hypre lib that is > consistent with my MPI lib and my PETSc lib built with Intel compilers? > > > It will build it from source. > > Matt > > > > Thanks, > Qin > > > On Thursday, January 9, 2014 11:43 AM, Satish Balay <[email protected]> > wrote: > Well the compiler [ld] doesn't appear to like the hypre library you > built. > > What do you have for: > > file /d/dev01/qlu/Lib/hypre-2.8.0b/LINUX_32/lib/libHYPRE.a > > Why not use --download-hypre=1 ? > > Satish > > On Thu, 9 Jan 2014, Qin Lu wrote: > > > Now it got new problem later in configure: it does not like the Hypre > lib :"Possible ERROR while running linker: ld: skipping incompatible > /d/dev01/qlu/Lib/hypre-2.8.0b/LINUX_32/lib/libHYPRE.a when searching for > -lHYPRE". Please see the attached log file for details. > > > > I built the Hypre-2.8.0b using the same Intel compilers as PETSc. > > > > Thanks for any ideas, > > Qin > > > > > > > > On Thursday, January 9, 2014 9:25 AM, Qin Lu <[email protected]> > wrote: > > > > Thanks a lot for pointing out the problem. Configure passed it after I > set the path of libirc.so. > > > > Regards, > > Qin > > > > > > > > On Wednesday, January 8, 2014 4:25 PM, Satish Balay <[email protected]> > wrote: > > > > > ('Linux', 'houhpclc01', '2.6.18-308.4.1.el5', '#1 SMP Tue Apr 17 > 17:08:10 EDT 2012', 'i686', 'i686') > > > > the machine appears to to be running 32bit linux - so I'm not sure why > it has a 64bit libirc.so > > > > [and the paths linker is referencing to are 32bit library paths] > > > > The workarround to try [for intel compilers] is: > > > > --with-clib-autodetect=0 --with-fortranlib-autodetect=0 > --with-cxxlib-autodetect=0 LIBS="-Bstatic -lifcore -Bdynamic" > > > > Satish > > > > > > The On Wed, 8 Jan 2014, Barry Smith wrote: > > > > > > > > Here is how icc is linking a C main program: > > > > > > ld --eh-frame-hdr -dynamic-linker /lib/ld-linux.so.2 -m elf_i386 -o > /tmp/petsc-3SW45q/config.compilers/conftest > -L/apps/compilers/intel/Compiler/11.1/056/lib/ia32 > > -L/usr/lib/gcc/i386-redhat-linux/4.1.2/ > -L/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../ -L/lib/ -L/usr/lib > /usr/lib/gcc/i386-redhat-linux/4.1.2/../../../crt1.o > /usr/lib/gcc/i386-redhat-linux/4.1.2/../../../crti.o > /usr/lib/gcc/i386-redhat-linux/4.1.2/crtbegin.o > /tmp/petsc-3SW45q/config.compilers/conftest.o -ldl -Bstatic -limf -lsvml > -Bdynamic -lm -Bstatic -lipgo -ldecimal -Bdynamic -lgcc_s -lgcc -Bstatic > -lirc -Bdynamic -lc -lgcc_s -lgcc -Bstatic -lirc_s -Bdynamic -ldl -lc > /usr/lib/gcc/i386-redhat-linux/4.1.2/crtend.o > /usr/lib/gcc/i386-redhat-linux/4.1.2/../../../crtn.o > > > > > > Since PETSc uses C if you use Fortran it needs to link against this > same stuff with the intel Fortran linker. We try to rationalize the above > list and get > > > > > > Libraries needed to link C code with another linker: ['-ldl', > '-L/apps/compilers/intel/Compiler/11.1/056/lib/ia32', > > '-L/usr/lib/gcc/i386-redhat-linux/4.1.2', '-limf', '-lsvml', '-lipgo', > '-ldecimal', '-lgcc_s', '-lirc', '-lirc_s', > '-L/apps/compilers/intel/Compiler/11.1/056/lib/ia32', > '-L/usr/lib/gcc/i386-redhat-linux/4.1.2’] > > > > > > So when it uses ifort to link something it uses > > > > > > /apps/compilers/intel/Compiler/11.1/056/bin/ia32/ifort -o > /tmp/petsc-3SW45q/config.setCompilers/conftest -O3 > /tmp/petsc-3SW45q/config.setCompilers/conftest.o -ldl > -L/apps/compilers/intel/Compiler/11.1/056/lib/ia32 > -L/usr/lib/gcc/i386-redhat-linux/4.1.2 -limf -lsvml -lipgo -ldecimal > -lgcc_s -lirc -lirc_s -L/apps/compilers/intel/Compiler/11.1/056/lib/ia32 > -L/usr/lib/gcc/i386-redhat-linux/4.1.2 -ldl > > > > > > which when running the code results in > > > > > > ERROR while running executable: Could not execute > > "/tmp/petsc-3SW45q/config.setCompilers/conftest": > > > /tmp/petsc-3SW45q/config.setCompilers/conftest: error while loading > shared libraries: libirc.so: wrong ELF class: ELFCLASS64 > > > > > > Because the -Bstatic are stripped from the link line the wrong > libirc.so gets picked up by the linker resulting in the runtime error. > > > > > > I’ve seen these perverse icc link lines mess things up before but > don’t remember a solution. Satish must remember! > > > > > > Is there a reason to use the 32bit version? Have you tried using the > 64 bit compilers ? Generally I don’t think there is a reason to use 32bit > now a days. > > > > > > Barry > > > > > > > > > > > > > > > > > > > > > On Jan 8, 2014, at 3:21 > > PM, Qin Lu <[email protected]> wrote: > > > > > > > Hello, > > > > > > > > I am trying to build a Linux 32-bit PETSc lib. I first built > python-2.7.5 in a 32-bit Linux workstation without problem, then used this > python to configure PETSc-3.4.2 with Intel C/C++/Fortran compilers, it got > the following error: > > > > > > > > > =============================================================================== > > TESTING: checkCLibraries from > > config.compilers(config/BuildSystem/config/compilers.py:161) > > ******************************************************************************* > > > > UNABLE to EXECUTE BINARIES for ./configure > > > > > ------------------------------------------------------------------------------- > > > > Cannot run executables created with FC. If this machine uses a batch > system > > > > to submit jobs you will need to configure using ./configure with the > additional option --with-batch. > > > > Otherwise there is problem with the compilers. Can you compile and > run code > > with your C/C++ (and maybe Fortran) compilers? > > > > See http://www.mcs.anl.gov/petsc/documentation/faq.html#libimf > > > > > ******************************************************************************* > > > > > > > > It seems that a test program built with the given Intel ifort does > not run. But I have built another program using ifort in the same > workstation and it runs fine. > > > > > > > > Please see the attached configure.log file for details. > > > > > > > > Thanks for your suggestions! > > > > > > > > Regards, > > > > Qin > > > > > > > > > > > > > > <configure.log> > > > > > > > > > > > > > > > -- > What most experimenters take for granted before they begin their > experiments is infinitely more interesting than any results to which their > experiments lead. > -- Norbert Wiener > > > -- What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead. -- Norbert Wiener
