Hello,
I wonder if anyone can help me with configuring/compiling ALPS-1.3.5 on a Linux machine with AMD Opteron Processor. My problem seems to be making the configuration routine see either acml or blas/lapack libraries. From what I can tell, there are two separate installations of acml/blas/lapack libraries, one is the set of ACML libraries: [shtengel@gigio ~]$ ls /usr/local/acml3.6.0/ Doc gnu64 ReleaseNotes ReleaseNotes.acml_mv util [shtengel@gigio ~]$ ls /usr/local/acml3.6.0/gnu64/lib libacml.a libacml_mv.a libacml_mv.so libacml.so [shtengel@gigio ~]$ ls /usr/local/acml3.6.0/gnu64/include/ acml.h acml_mv.h acml_mv_m128.h Notice is that there is no gfortran64 subdirectory in /usr/local/acml3.6.0/ (I can't tell if it's really needed, but someone suggested it may be.) The other set of libraries is in a PGI installation and it includes ACML, BLAS and LAPACK libraries separately: ls /usr/local/pgi-7.2-3/linux86-64/7.2-3/lib 90alt.o libjpgdbg.so libpgf90_rpm1.a libpgnod_prof.a f90main.o libjpgprof.so libpgf90_rpm1.ipl libpgnod_prof_g.a hpfalt.o liblapack.a libpgf90_rpm1_p.a libpgnod_prof_hpmpi.a hpfmain.o liblapack.ipl libpgf90rtl.a libpgnod_prof_mpi2.a hpmpif.o libmem.il libpgf90rtl.ipl libpgnod_prof_mpi.a hugebss.ld libm.ipl libpgftnrtl.a libpgnod_prof_mvapich.a initmp.o libmpich.ipl libpgftnrtl.ipl libpgnod_prof_papi.a init_pgpf.o libnspgc.a libpghpf2.a libpgnod_prof_pfo.a libacml.a libnuma.so libpghpf.a libpgnod_prof_time.a libacml.ipl libnuma.so.1 libpghpf_mpi.a libpthread.ipl libacml_mp.a libpgbind.a libpghpf_mpi_p.a libstd.a libacml_mv.a libpgbind.so libpghpf_prof.a libstdz.a libblas.a libpgc.a libpghpf_rpm1.a libzceh.a libblas.ipl libpgc.ipl libpghpf_rpm1_p.a nonuma.o libC.a libpgf902.a libpghpf_rpm.a pgfalt.o libc.ipl libpgf902.ipl libpghpf_rpm_p.a pgfi8st.o libCz.a libpgf90.a libpghpf_smp.a pgfmain.o libfmpich.ipl libpgf90.ipl libpghpf_smp_p.a pgi.ld libhugetlbfs_pgi.a libpgf90_prof.a libpgmp.a subchk.o libintrinsics.il libpgf90_prof.ipl libpgmp.ipl trace_init.o [shtengel@gigio ~]$ ls /usr/local/pgi-7.2-3/linux86-64/7.2-3/include/ acml.h byteswap.h iso_fortran_env.mod omp_lib_kinds.mod sys acml_mv.h CC lib3f.h omp_lib.mod tmmintrin.h acml_mv_m128.h curses.h limits.h pglocal.f va_list.h alloca.h emmintrin.h math.h pglocal.h varargs.h ammintrin.h error.h mmintrin.h pmmintrin.h xmmintrin.h ansidecl.h float.h ncurses.h stdarg.h argp.h intrin.h omp.h stddef.h bits iso_c_binding.mod omp_lib.h stdlib.h
(Notice the absence of blas.h and lapac.h header files, acml header files are in place). Anyway, any attempts of making the ./configure routine see either those libraries fails, as far as I can tell: [shtengel@gigio ~/alps-1.3.5]$ ./configure --with-blas-dir=/usr/local/acml3.6.0/gnu64/lib --with-blas=-lacml --with-lapack-dir=/usr/local/acml3.6.0/gnu64/lib --with-lapack=-lacml --with-boost=/home/shtengel/boost_1_42_0 ...... configure: checking for BLAS Library checking for BLAS library directory... /usr/local/acml3.6.0/gnu64/lib checking for dgemm_ in -L/usr/local/acml3.6.0/gnu64/lib -lacml... no checking for dgemm_ in -L/usr/local/acml3.6.0/gnu64/lib -lsci... no checking for dgemm_ in -L/usr/local/acml3.6.0/gnu64/lib -lacml -lacml_mv - lgfortran... no checking for dgemm_ in -L/usr/local/acml3.6.0/gnu64/lib -lblas... no checking for dgemm_ in -L/usr/local/acml3.6.0/gnu64/lib -lblas -lf2c... no checking for dgemm_ in -L/usr/local/acml3.6.0/gnu64/lib -lblas -lg2c... no checking for dgemm_ in -L/usr/local/acml3.6.0/gnu64/lib -lblas -lpgftnrtl - lpgc... no checking for dgemm_ in -L/usr/local/acml3.6.0/gnu64/lib -lblas /usr/lib/libg2c.so.0.0.0... no configure: disabling BLAS support configure: disabling LAPACK support ......
[shtengel@gigio ~/alps-1.3.5]$ ./configure --with-blas-dir=/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib --with-blas=-lacml --with-lapack-dir=/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib --with-lapack=- lacml --with-boost=/home/shtengel/boost_1_42_0 ..... configure: checking for BLAS Library checking for BLAS library directory... /usr/local/pgi-7.2-3/linux86-64/7.2-3/lib checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lacml... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lsci... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lacml - lacml_mv -lgfortran... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lblas... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lblas - lf2c... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lblas - lg2c... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lblas - lpgftnrtl -lpgc... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lblas /usr/lib/libg2c.so.0.0.0... no configure: disabling BLAS support configure: disabling LAPACK support ..... And finally: [shtengel@gigio ~/alps-1.3.5]$ ./configure --with-blas-dir=/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib --with-blas=-lblas --with-lapack-dir=/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib --with-lapack=-llapack --with-boost=/home/shtengel/boost_1_42_0 ..... configure: checking for BLAS Library checking for BLAS library directory... /usr/local/pgi-7.2-3/linux86-64/7.2-3/lib checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lblas... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lsci... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lacml - lacml_mv -lgfortran... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lblas... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lblas - lf2c... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lblas - lg2c... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lblas - lpgftnrtl -lpgc... no checking for dgemm_ in -L/usr/local/pgi-7.2-3/linux86-64/7.2-3/lib -lblas /usr/lib/libg2c.so.0.0.0... no configure: disabling BLAS support configure: disabling LAPACK support .....
Removing references to lapack (i.e. keeping only references to blas in the configuration options makes no difference whatsoever). In either case, I am getting " LAPACK support no" at the end of the configuration process, and subsequent use of make does not compile dmrg (which is what I intend to run). Any help or suggestions will be greatly appreciated!
Kirill
On 27 Apr 2010, at 04:19, Kirill Shtengel wrote:
Hello,
I wonder if anyone can help me with configuring/compiling ALPS-1.3.5 on a Linux machine with AMD Opteron Processor. My problem seems to be making the configuration routine see either acml or blas/lapack libraries. From what I can tell, there are two separate installations of acml/blas/lapack libraries, one is the set of ACML libraries:
...
Removing references to lapack (i.e. keeping only references to blas in the configuration options makes no difference whatsoever). In either case, I am getting " LAPACK support no" at the end of the configuration process, and subsequent use of make does not compile dmrg (which is what I intend to run). Any help or suggestions will be greatly appreciated!
Hi Kirill
The best way to figure out how to link LAPACL/BLAS is to write a test program:
extern "C" {void dgeev_();} int main() { dgeev_(); }
and try to compile this with the -L and -l options you mention above. You'll immediately see the linker errors, which might give you hints regarding libraries you need to link in addition. We can help you more if you tell us what happens when you try this.
Matthias
Matthias,
Here is the best I seem to be able to do with your test program:
[shtengel@gigio ~]$ g++ -L /usr/local/acml3.6.0/gnu64/lib -lacml -lacml_mv test.cpp /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `e_wsfi' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_stop' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_wsfe' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `e_rsfi' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_cmp' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `e_wsfe' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `z_abs' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `do_lio' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_wsle' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `z_sqrt' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_cat' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `c_sqrt' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_copy' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_rsfi' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `do_fio' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `z_exp' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `c_abs' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `e_wsle' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `c_exp' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_wsfi' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `i_indx' collect2: ld returned 1 exit status
Could someone please help me with these errors? What are the libraries I am still missing? The other installation of acml/blas/lapack libraries I have mentioned in my previous email does not work at all: the linker reports skipping these libraries as incompatible (?). Once again, any help will be greatly appreciated!
Kirill
On Monday 26 April 2010 21:45:23 Matthias Troyer wrote:
On 27 Apr 2010, at 04:19, Kirill Shtengel wrote:
Hello,
I wonder if anyone can help me with configuring/compiling ALPS-1.3.5 on a Linux machine with AMD Opteron Processor. My problem seems to be making the configuration routine see either acml or blas/lapack libraries. From what I can tell, there are two separate installations of acml/blas/lapack libraries, one is the set of ACML libraries:
...
Removing references to lapack (i.e. keeping only references to blas in the configuration options makes no difference whatsoever). In either case, I am getting " LAPACK support no" at the end of the configuration process, and subsequent use of make does not compile dmrg (which is what I intend to run). Any help or suggestions will be greatly appreciated!
Hi Kirill
The best way to figure out how to link LAPACL/BLAS is to write a test program:
extern "C" {void dgeev_();} int main() { dgeev_(); }
and try to compile this with the -L and -l options you mention above. You'll immediately see the linker errors, which might give you hints regarding libraries you need to link in addition. We can help you more if you tell us what happens when you try this.
Matthias
Hi,
this looks like you're forgetting to link gfortran. Please try
g++ -L /usr/local/acml3.6.0/gnu64/lib -lacml -lacml_mv -lgfortran
Emanuel
On Apr 29, 2010, at 4:07 PM, Kirill Shtengel wrote:
Matthias,
Here is the best I seem to be able to do with your test program:
[shtengel@gigio ~]$ g++ -L /usr/local/acml3.6.0/gnu64/lib -lacml -lacml_mv test.cpp /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `e_wsfi' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_stop' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_wsfe' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `e_rsfi' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_cmp' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `e_wsfe' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `z_abs' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `do_lio' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_wsle' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `z_sqrt' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_cat' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `c_sqrt' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_copy' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_rsfi' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `do_fio' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `z_exp' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `c_abs' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `e_wsle' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `c_exp' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `s_wsfi' /usr/local/acml3.6.0/gnu64/lib/libacml.so: undefined reference to `i_indx' collect2: ld returned 1 exit status
Could someone please help me with these errors? What are the libraries I am still missing? The other installation of acml/blas/lapack libraries I have mentioned in my previous email does not work at all: the linker reports skipping these libraries as incompatible (?). Once again, any help will be greatly appreciated!
Kirill
On Monday 26 April 2010 21:45:23 Matthias Troyer wrote:
On 27 Apr 2010, at 04:19, Kirill Shtengel wrote:
Hello,
I wonder if anyone can help me with configuring/compiling ALPS-1.3.5 on a Linux machine with AMD Opteron Processor. My problem seems to be making the configuration routine see either acml or blas/lapack libraries. From what I can tell, there are two separate installations of acml/blas/lapack libraries, one is the set of ACML libraries:
...
Removing references to lapack (i.e. keeping only references to blas in the configuration options makes no difference whatsoever). In either case, I am getting " LAPACK support no" at the end of the configuration process, and subsequent use of make does not compile dmrg (which is what I intend to run). Any help or suggestions will be greatly appreciated!
Hi Kirill
The best way to figure out how to link LAPACL/BLAS is to write a test program:
extern "C" {void dgeev_();} int main() { dgeev_(); }
and try to compile this with the -L and -l options you mention above. You'll immediately see the linker errors, which might give you hints regarding libraries you need to link in addition. We can help you more if you tell us what happens when you try this.
Matthias
-- Kirill Shtengel Associate Professor Department of Physics & Astronomy UC Riverside, CA 92521 Tel: (951) 827-1058
comp-phys-alps-users@lists.phys.ethz.ch