Dear All, for some unknown reasons, I am having terrible problems in building deal.II and trilinos on a cluster to which I have access. I can compile Trilinos with the mpi compilers statically, but not shared. On the contrary, I can compile deal.II in shared form, but not statically.
I am getting the following error when I compile deal.II: ---------------- configuring additional libs ---------------- checking for PETSc library directory... explicitly disabled checking for Trilinos library directory... /data/heltai/libs/trilinos- static/ checking whether Trilinos uses shared libraries... no checking whether Trilinos uses static libraries... yes checking for daxpy_ in -lblas... no checking for HSL subroutines... none found Adding FORTRAN libraries -lg2c -lgfortran checking for crc32 in -lz... no checking netcdfcpp.h usability... yes checking netcdfcpp.h presence... yes checking for netcdfcpp.h... yes checking for nc_open in -lnetcdf... no checking for Metis library directory... /data/heltai/libs/metis-4.0 checking for Metis version... METIS 4.0.1 Mon Nov 30 10:27:29 CST 1998 checking UmfPack library... using included version checking for dgbsv_ in -llapack... no configure: error: LAPACK library lapack not found If I take a look at the config.log, I see the following error: configure:12379: checking for daxpy_ in -lblas configure:12414: /usr/local/ibgd/mpi/gcc4/mvapich-0.9.5-mlx1.0.3/bin/ mpicxx -o conftest -Wsynth -W error -I/home/heltai/libs/deal.II.mpigcc4/contrib/boost/include -Wl,- rpath,/home/heltai/libs/dea l.II.mpigcc4/lib -lpthread -rdynamic -static conftest.cpp -lblas - lg2c -lgfortran >&5 g++: -rpath: linker input file unused because linking not done g++: /home/heltai/libs/deal.II.mpigcc4/lib: linker input file unused because linking not done /opt/amd/binutils/bin/ld: cannot find -lmtl_common collect2: ld returned 1 exit status configure:12420: $? = 1 which does not seem to be connected to lapack or blas but to the mtl_common library (infiniband libs). I ran again the configure line using the following command line, ./configure CXX=mpicxx CC=mpicc F77=mpif77 FC=mpif90 --with-umfpack -- with-blas --with-petsc=no --with-lapack TRILINOS_DIR=/data/heltai/libs/ trilinos-static/ --disable-shared LDFLAGS="-L/usr/local/ibgd/driver/ infinihost/lib64/" but I still get the same error: configure:12379: checking for daxpy_ in -lblas configure:12414: /usr/local/ibgd/mpi/gcc4/mvapich-0.9.5-mlx1.0.3/bin/ mpicxx -o conftest -Wsynth -W error -I/home/heltai/libs/deal.II.mpigcc4/contrib/boost/include -Wl,- rpath,/home/heltai/libs/dea l.II.mpigcc4/lib -L/usr/local/ibgd/driver/infinihost/lib64/ -lpthread - rdynamic -static conftest.c pp -lblas -lg2c -lgfortran >&5 g++: -rpath: linker input file unused because linking not done g++: /home/heltai/libs/deal.II.mpigcc4/lib: linker input file unused because linking not done /opt/amd/binutils/bin/ld: cannot find -lmtl_common collect2: ld returned 1 exit status configure:12420: $? = 1 even though the mtl_common.so file is in the /usr/local/ibgd/driver/ infinihost/lib64/ Is this only because the linker cannot find libmtl_common.a? Is there a way to make a static library from a shared one (i.e. to generate libmtl_common.a from the .so file)? If I look at the logs for trilinos, this problem is not there, and they DO link against the mtl_common library. I am confused. Trilinos is built statically (as is deal.II in the attempt above), and it does not complain. Is it really necessary to have BOTH libraries statically compiled, or can we mix static and shared libs? If it is possible, is there a "quick and dirty" solution? Thanks for any help, and sorry if this is slightly off topic... Luca. -- Luca Heltai <[EMAIL PROTECTED]> http://www-dimat.unipv.it/heltai University of Pavia, Dep. of Mathematics Phone : +39 0382 98 5680, Office: A10 -- There are no answers, only cross references. _______________________________________________
