[gmx-users] AIX XLC Gromacs-5.1-rc1. Undefined reference. Underscore issue.
Mark Abraham
mark.j.abraham at gmail.com
Thu Aug 20 12:42:47 CEST 2015
Hi,
GROMACS 5.1 is out, please don't install 5.1-rc1 any more. There's a little
bit of advice about using custom linear algebra libraries at
http://manual.gromacs.org/documentation/5.1/install-guide/index.html#linear-algebra-libraries
but
you don't need to bother with such libraries unless you know mdrun will be
used to do normal-mode analysis or something. You might still run into
problems - if so, we'll want to know how you ran cmake in the first place.
Mark
On Thu, Aug 20, 2015 at 1:20 AM Carlos Aguni <sorlaker at gmail.com> wrote:
> Helo guys!
>
> I'm trying to compile Gromacs-5.1-rc1 with XLC 13.1.2 & ESSL 5.3 and I'm
> facing
> an undefined reference error.
> Here's what I got:
>
> $ cd /home/ibm/crash/gromacs-agosto/2/gromacs-5.1-rc1/single/share/template
> && /usr/bin/cmake -E cmake_link_script CMakeFiles/template.dir/link.txt
> --verbose=1
>
> $ /usr/bin/mpixlc++ -qarch=auto -qaltivec -std=c++0x -qnoinline -O0
> -qsmp=omp -Wextra -Wno-missing-field-initializers -Wpointer-arith -Wall
> -Wno-unused-function -O3 -DNDEBUG -qextname
> CMakeFiles/template.dir/template.cpp.o -o ../../bin/template -rdynamic
> ../../lib/libgromacs_mpi.so.1.0.0 -ldl -lrt -lessl -L/usr/lib -lessl
> -L/opt/ibm/xlf/15.1.2/lib/ -lxlf90 -lxlf90_t -Wl,-rpath,"\$ORIGIN/../lib"
>
> /opt/ibm/xlC/13.1.2/bin/.orig/xlc++: warning: 1501-218 file
> ../../lib/libgromacs_mpi.so.1.0.0 contains an incorrect file suffix
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dlaev2_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dorm2r_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to
> `gmx_fft_init_1d_real'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dlascl_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `slaev2_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `slarnv_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `slartg_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dlasr_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to
> `gmx_fft_init_2d_real'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `ssyevr_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `gmx_fft_1d_real'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `slasr_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `sorm2r_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dlaset_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `slacpy_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dlapy2_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dlarnv_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to
> `gmx_fft_get_version_info'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `gmx_fft_1d'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `slanst_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dgeqr2_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `sgeqr2_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `gmx_fft_cleanup'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `ssteqr_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dsteqr_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dlacpy_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `slapy2_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dlartg_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `gmx_fft_destroy'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `slascl_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `slaset_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `dlanst_'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `gmx_fft_2d_real'
>
> ../../lib/libgromacs_mpi.so.1.0.0: undefined reference to `gmx_fft_init_1d'
>
> I think that's an underscore problem. Because ESSL has those functions but
> the
>
> flags responsible to solve that (-qextname -qnoextname) isn't working:
>
> $ objdump -x /usr/lib/libessl.so | grep dlaev2
>
> 0000000000000000 l df *ABS* 0000000000000000
> /home/essl/src/work/dlaev2.f
>
> 0000000000aa67a0 l F .text 000000000000023c 0x60 dlaev2
>
> $ objdump -x /usr/lib/libessl.so | grep dlacpy
>
> 0000000000000000 l df *ABS* 0000000000000000
> /home/essl/src/work/dlacpyd.f
>
> 0000000000000000 l df *ABS* 0000000000000000
> /home/essl/src/work/dlacpy.f
>
> 0000000000a99ca0 l F .text 0000000000000440 0x60 dlacpyd
>
> 0000000000a9a0e0 l F .text 00000000000003b0 0x60 dlacpy
>
>
> Can anyone help?
>
>
> Thanks in advance!
>
> Carlos.
> --
> Gromacs Users mailing list
>
> * Please search the archive at
> http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> posting!
>
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>
> * For (un)subscribe requests visit
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> send a mail to gmx-users-request at gromacs.org.
>
More information about the gromacs.org_gmx-users
mailing list