[CPMD-list] problems in starting cpmd
Silviu Zilberman
silviu at Princeton.EDU
Tue May 9 14:11:38 CEST 2006
Hi Axel,
The problem was in using -static instead of -i-static, as you suggested.
Now it works, but I'll clean up the Makefile some more, following your
suggestions.
Thank you so much for your help!
Silviu.
Axel Kohlmeyer wrote:
> On Tue, 9 May 2006, Silviu Zilberman wrote:
>
> SZ> Hi Axel,
> SZ>
> SZ> Here are the results:
> SZ>
> SZ> eyring: [109]> a.out
> SZ> Hello World!
> SZ> eyring: [110]> ldd a.out
> SZ> libm.so.6 => /lib64/tls/libm.so.6 (0x0000002a95687000)
> SZ> libc.so.6 => /lib64/tls/libc.so.6 (0x0000002a95810000)
> SZ> libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000002a95a54000)
> SZ> libdl.so.2 => /lib64/libdl.so.2 (0x0000002a95b5f000)
> SZ> /lib64/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
> SZ> (0x0000002a95556000)
>
> that means the compiler is ok. so you either picked up
> the wrong goto binary (please try an ldd on that, too)
> or your linker flags in the makefile are messed up.
>
> as i wrote before, please try replacing -static with
> -i-static as you must not link shared objects statically.
>
> axel.
>
> SZ>
> SZ> Thanks, Silviu.
> SZ>
> SZ> Axel Kohlmeyer wrote:
> SZ> > On Tue, 9 May 2006, Silviu Zilberman wrote:
> SZ> >
> SZ> > SZ> Hi Axel,
> SZ> > SZ>
> SZ> > SZ> Thank you so much for your prompt reply. Here is the result of ldd:
> SZ> > SZ>
> SZ> > SZ> eyring: [102]> ldd cpmd.x
> SZ> > SZ> /usr/bin/ldd: ./cpmd.x: /lib/ld64.so.1: bad ELF interpreter: No such
> SZ> > SZ> file or directory
> SZ> >
> SZ> > sorry, but this is useless without the ldd on the .so files.
> SZ> > can you also write/compile a 'hello world' with the same
> SZ> > compiler (but without libraries) and do the ldd again on that
> SZ> > binary.
> SZ> >
> SZ> > thanks,
> SZ> > axel.
> SZ> >
> SZ> > SZ>
> SZ> > SZ> Thanks, Silviu.
> SZ> > SZ>
> SZ> > SZ> Axel Kohlmeyer wrote:
> SZ> > SZ> > On Tue, 9 May 2006, Silviu Zilberman wrote:
> SZ> > SZ> >
> SZ> > SZ> > SZ> Hi,
> SZ> > SZ> >
> SZ> > SZ> > hi silviu,
> SZ> > SZ> >
> SZ> > SZ> > SZ> I downloaded and installed the latest CPMD v3.11.1 on our opteron
> SZ> > SZ> > SZ> cluster, using intel v9 compiler (below is the header of the makefile).
> SZ> > SZ> > SZ> When running a serial job, I keep getting a message that cpmd.x is not
> SZ> > SZ> > SZ> found:
> SZ> > SZ> > SZ>
> SZ> > SZ> > SZ> eyring: [103]> ./cpmd.x amide.in > amide.out&
> SZ> > SZ> > SZ> [1] 21593
> SZ> > SZ> > SZ> eyring: [104]> zsh: command not found: ./cpmd.x
> SZ> > SZ> >
> SZ> > SZ> > <grin>. this is one of the most arcane error messages
> SZ> > SZ> > on linux machines. people who remember the move from
> SZ> > SZ> > the a.out to the ELF binary format many, many years
> SZ> > SZ> > back have seen it a lot, too. this does not mean, that
> SZ> > SZ> > cpmd.x is not found, but a shared linker or related
> SZ> > SZ> > compound.
> SZ> > SZ> >
> SZ> > SZ> > please do: ldd cpmd.x
> SZ> > SZ> > to liste the requirements of the binary so we can
> SZ> > SZ> > see what is missing.
> SZ> > SZ> >
> SZ> > SZ> > SZ> Then if I run it in parallel I get:
> SZ> > SZ> > SZ>
> SZ> > SZ> > SZ> eyring: [102]> mpirun -np 1 cpmd.x amide.in > amide.out&
> SZ> > SZ> > SZ> [1] 21533
> SZ> > SZ> > SZ> eyring: [103]> /opt/mpich.intel/bin//mpirun:
> SZ> > SZ> > SZ> /home/silviu/Work/Calculations/CPMD/dipole/cpmd.x: /lib/ld64.so.1: bad
> SZ> > SZ> > SZ> ELF interpreter: No such file or directory
> SZ> > SZ> >
> SZ> > SZ> > that could be the same error.
> SZ> > SZ> >
> SZ> > SZ> > SZ> Indeed there is no such file /lib/ld64.so.1 but there are other 64 bit
> SZ> > SZ> > SZ> ld's in a different directory:
> SZ> > SZ> > SZ>
> SZ> > SZ> > SZ> eyring: [105]> ls /lib64/ld*
> SZ> > SZ> > SZ> /lib64/ld-2.3.2.so* /lib64/ld-linux-x86-64.so.2@
> SZ> > SZ> > SZ> /lib64/ld-lsb-x86-64.so.1@
> SZ> > SZ> > SZ>
> SZ> > SZ> > SZ>
> SZ> > SZ> > SZ> Any ideas how to fix these problems? Is it related to my choice of
> SZ> > SZ> > SZ> Blas/Lapack libraries?
> SZ> > SZ> >
> SZ> > SZ> > have you tried others? mkl?
> SZ> > SZ> > i'd need to see the output of ldd on the various objects to make sure.
> SZ> > SZ> >
> SZ> > SZ> > SZ>
> SZ> > SZ> > SZ> Thanks, Silviu.
> SZ> > SZ> > SZ>
> SZ> > SZ> > SZ> FFLAGS = -O -r8
> SZ> > SZ> >
> SZ> > SZ> > please try, -O2 -unroll
> SZ> > SZ> > -r8 should not be needed and used anymore for cpmd 3.11.1 we cleaned
> SZ> > SZ> > up all non-conforming instrinsics during the 3.10 development cycle.
> SZ> > SZ> >
> SZ> > SZ> > SZ> #LFLAGS = -L/usr/lib64/ -llapack -L/opt/ATLAS/lib/ -lf77blas -lcblas
> SZ> > SZ> > SZ> -latlas /opt/acml2.5.0/gnu64/lib/libacml.so -lg2c -static
> SZ> > SZ> > SZ> LFLAGS = /usr/local/lib/libgoto_opt64-r0.96.so
> SZ> > SZ> > SZ> /opt/acml2.5.0/gnu64/lib/libacml.so -lg2c -static
> SZ> > SZ> >
> SZ> > SZ> > ouch. you should not use '-static' with shared libraries.
> SZ> > SZ> > please use '-i-static'. this way all compiler related libraries
> SZ> > SZ> > will be linked statically, but libc/libm and related not
> SZ> > SZ> > allowing the use of shared libraries otherwise.
> SZ> > SZ> >
> SZ> > SZ> > also, i suggest to use an adapted libacml.a
> SZ> > SZ> >
> SZ> > SZ> > instructions on making the gcc/g77 compile acml compatible
> SZ> > SZ> > with the intel compilers are in the INSTALL directory
> SZ> > SZ> > (if it is not in your cpmd source archive, you;ll find
> SZ> > SZ> > it somewhere in the contrib section of cpmd.org download)
> SZ> > SZ> >
> SZ> > SZ> > a short form is at:
> SZ> > SZ> > https://www.liniac.upenn.edu/wiki/tiki-index.php?page=acml+for+CMM
> SZ> > SZ> >
> SZ> > SZ> >
> SZ> > SZ> > SZ> CFLAGS =
> SZ> > SZ> > SZ> CPP = /lib/cpp -P -C -traditional
> SZ> > SZ> > SZ> CPPFLAGS = -D__alpha -DPOINTER8 -DLAPACK -DFFT_DEFAULT -DALPHALINUX \
> SZ> > SZ> > SZ> -DMYRINET -DPARALLEL=parallel -DMP_LIBRARY=__MPI -DLINUX_IA64_INTEL
> SZ> > SZ> >
> SZ> > SZ> > -DLINUX_IA64_INTEL is wrong for this architecture
> SZ> > SZ> > (does not resolve to anything anyways).
> SZ> > SZ> > in case of using MKL (for which this was initially intended)
> SZ> > SZ> > you have to use now -DINTEL_MKL
> SZ> > SZ> > to ifdef out the multiply defined IZAMAX.
> SZ> > SZ> > alternative for that would be to make the linker more permissive
> SZ> > SZ> > by adding the following to LDFLAGS: -Wl,--allow-multiple-definitions
> SZ> > SZ> >
> SZ> > SZ> > please let me know, if you need additional help,
> SZ> > SZ> > axel.
> SZ> > SZ> >
> SZ> > SZ> > SZ> NOOPT_FLAG =
> SZ> > SZ> > SZ> CC = mpicc -O2 -Wall -m64
> SZ> > SZ> > SZ> FC = mpif90 -c
> SZ> > SZ> > SZ> LD = mpif90
> SZ> > SZ> > SZ> AR = ar
> SZ> > SZ> > SZ>
> SZ> > SZ> > SZ> #----------------------------------------------------------------------------
> SZ> > SZ> > SZ> # Personal Configuration
> SZ> > SZ> > SZ> #----------------------------------------------------------------------------
> SZ> > SZ> > SZ>
> SZ> > SZ> > SZ> _______________________________________________
> SZ> > SZ> > SZ> CPMD-list mailing list
> SZ> > SZ> > SZ> CPMD-list at cpmd.org
> SZ> > SZ> > SZ> http://cpmd.org/mailman/listinfo/cpmd-list
> SZ> > SZ> > SZ>
> SZ> > SZ> >
> SZ> > SZ> >
> SZ> > SZ>
> SZ> >
> SZ> >
> SZ>
>
>
More information about the CPMD-list
mailing list