I think you must compile metis in dynamic version with option -fPIC. You'd better to try to recompile with this option.
On Sat, November 28, 2009 7:21 am, Huan Sun wrote: > Hi all, > > > I was trying to install deal.II 6.2.1 together with Petsc and Metis on a > parallel computer but I have the following error message when compiling > 'make all': > > /usr/bin/ld: /ima/home/hsun/metis/libmetis.a(pmetis.o): relocation > R_X86_64_32 against `a local symbol' can not be used when making a > shared object; recompile with -fPIC > /ima/home/hsun/metis/libmetis.a: could not read symbols: Bad value > collect2: ld returned 1 exit status > make[1]: *** [/ima/home/hsun/deal.II/lib/liblac.so] Error 1 > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/lac' > make: *** [laco] Error 2 > > Any suggestions how I can fix this problem? > > Thanks a lot! > > Huan > > > > > The whole compiling info is attached below: > > > cd /ima/home/hsun/deal.II/common/scripts && /usr/bin/make > make_dependencies > cd /ima/home/hsun/deal.II/common/scripts && /usr/bin/make > expand_instantiations > make[1]: Entering directory `/ima/imavisitor/hsun/deal.II/contrib' > make[1]: Entering directory > `/ima/imavisitor/hsun/deal.II/common/scripts' > make[1]: `make_dependencies' is up to date. > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/common/scripts' > make[1]: Entering directory > `/ima/imavisitor/hsun/deal.II/common/scripts' > make[1]: `expand_instantiations' is up to date. > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/common/scripts' > cd /ima/home/hsun/deal.II/base && /usr/bin/make Makefile.dep > make[2]: Entering directory > `/ima/imavisitor/hsun/deal.II/contrib/functionparser' > make[2]: `/ima/home/hsun/deal.II/lib/contrib/functionparser/fparser.o' > is up to date. > make[2]: Leaving directory > `/ima/imavisitor/hsun/deal.II/contrib/functionparser' > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/contrib' > make[1]: Entering directory `/ima/imavisitor/hsun/deal.II/base' > make[1]: `Makefile.dep' is up to date. > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/base' > cd /ima/home/hsun/deal.II/lac && /usr/bin/make Makefile.dep > make[1]: Entering directory `/ima/imavisitor/hsun/deal.II/lac' > make[1]: `Makefile.dep' is up to date. > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/lac' > cd /ima/home/hsun/deal.II/deal.II && /usr/bin/make Makefile.dep > make[1]: Entering directory `/ima/imavisitor/hsun/deal.II/deal.II' > make[1]: `Makefile.dep' is up to date. > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/deal.II' > cd /ima/home/hsun/deal.II/lib && /usr/bin/make external-links > make[1]: Entering directory `/ima/imavisitor/hsun/deal.II/lib' > make[1]: Nothing to be done for `external-links'. > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/lib' > cd /ima/home/hsun/deal.II/contrib && /usr/bin/make > make[1]: Entering directory `/ima/imavisitor/hsun/deal.II/contrib' > make[2]: Entering directory > `/ima/imavisitor/hsun/deal.II/contrib/functionparser' > make[2]: `/ima/home/hsun/deal.II/lib/contrib/functionparser/fparser.o' > is up to date. > make[2]: Leaving directory > `/ima/imavisitor/hsun/deal.II/contrib/functionparser' > make[2]: Entering directory `/ima/imavisitor/hsun/deal.II/contrib/tbb' > make[3]: Entering directory > `/ima/imavisitor/hsun/deal.II/contrib/tbb/tbb22_20090809oss' > make[4]: Entering directory > `/ima/imavisitor/hsun/deal.II/lib/contrib/tbb/linux_intel64_gcc_cc4.2.4_libc2.7_kernel2.6.24_debug' > sh > /ima/imavisitor/hsun/deal.II/contrib/tbb/tbb22_20090809oss/./build/generate_tbbvars.sh > =====tbb=========================MT== debug/libtbb_debug.so.2 > make[4]: Leaving directory > `/ima/imavisitor/hsun/deal.II/lib/contrib/tbb/linux_intel64_gcc_cc4.2.4_libc2.7_kernel2.6.24_debug' > make[4]: Entering directory > `/ima/imavisitor/hsun/deal.II/lib/contrib/tbb/linux_intel64_gcc_cc4.2.4_libc2.7_kernel2.6.24_release' > sh > /ima/imavisitor/hsun/deal.II/contrib/tbb/tbb22_20090809oss/./build/generate_tbbvars.sh > =====tbb=========================MT== release/libtbb.so.2 > make[4]: Leaving directory > `/ima/imavisitor/hsun/deal.II/lib/contrib/tbb/linux_intel64_gcc_cc4.2.4_libc2.7_kernel2.6.24_release' > make[3]: Leaving directory > `/ima/imavisitor/hsun/deal.II/contrib/tbb/tbb22_20090809oss' > make[2]: Leaving directory `/ima/imavisitor/hsun/deal.II/contrib/tbb' > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/contrib' > cd /ima/home/hsun/deal.II/base && /usr/bin/make libg > cd /ima/home/hsun/deal.II/base && /usr/bin/make libo > make[1]: Entering directory `/ima/imavisitor/hsun/deal.II/base' > make[1]: Nothing to be done for `libo'. > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/base' > cd /ima/home/hsun/deal.II/lac && /usr/bin/make libo > make[1]: Entering directory `/ima/imavisitor/hsun/deal.II/base' > make[1]: Nothing to be done for `libg'. > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/base' > cd /ima/home/hsun/deal.II/lac && /usr/bin/make libg > make[1]: Entering directory `/ima/imavisitor/hsun/deal.II/lac' > =====lac==============optimized==MT== block_matrix_array.cc > =====lac==============optimized==MT== block_sparse_matrix.cc > =====lac==============optimized==MT== block_sparse_matrix_ez.cc > =====lac==============optimized==MT== block_sparsity_pattern.cc > make[1]: Entering directory `/ima/imavisitor/hsun/deal.II/lac' > =====lac==============optimized==MT== block_vector.cc > =====lac==============debug======MT== Linking library: liblac.g.so > =====lac==============optimized==MT== chunk_sparse_matrix.cc > =====lac==============optimized==MT== chunk_sparsity_pattern.cc > =====lac==============optimized==MT== compressed_set_sparsity_pattern.cc > =====lac==============optimized==MT== > compressed_simple_sparsity_pattern.cc > =====lac==============optimized==MT== compressed_sparsity_pattern.cc > =====lac==============optimized==MT== constraint_matrix.cc > =====lac==============optimized==MT== full_matrix.cc > =====lac==============optimized==MT== lapack_full_matrix.cc > /usr/bin/ld: /ima/home/hsun/metis/libmetis.a(pmetis.o): relocation > R_X86_64_32 against `a local symbol' can not be used when making a > shared object; recompile with -fPIC > /ima/home/hsun/metis/libmetis.a: could not read symbols: Bad value > collect2: ld returned 1 exit status > make[1]: *** [/ima/home/hsun/deal.II/lib/liblac.g.so] Error 1 > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/lac' > make: *** [lacg] Error 2 > make: *** Waiting for unfinished jobs.... > =====lac==============optimized==MT== matrix_lib.cc > =====lac==============optimized==MT== matrix_out.cc > =====lac==============optimized==MT== petsc_block_sparse_matrix.cc > =====lac==============optimized==MT== petsc_full_matrix.cc > =====lac==============optimized==MT== petsc_matrix_base.cc > In file included > from /ima/home/hsun/deal.II/lac/include/lac/petsc_sparse_matrix.h:19, > > from > /ima/home/hsun/deal.II/lac/include/lac/petsc_block_sparse_matrix.h:20, > > from > /ima/home/hsun/deal.II/lac/include/lac/constraint_matrix.templates.h:25, > from source/constraint_matrix.cc:16: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h: In member > function âvoid dealii::PETScWrappers::MatrixBase::add(unsigned int, > unsigned int, const unsigned int*, const PetscScalar*, bool, bool)â: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h:1682: > warning: unused variable âierrâ > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h: In > member function âvoid dealii::FullMatrix<number>::gauss_jordan() [with > number = double]â: > source/full_matrix.inst:1: instantiated from here > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h:1840: > warning: unused variable âtypical_diagonal_elementâ > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h: In > member function âvoid dealii::FullMatrix<number>::gauss_jordan() [with > number = float]â: > source/full_matrix.inst:29: instantiated from here > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h:1840: > warning: unused variable âtypical_diagonal_elementâ > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h: In > member function âvoid dealii::FullMatrix<number>::gauss_jordan() [with > number = long double]â: > source/full_matrix.inst:57: instantiated from here > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h:1840: > warning: unused variable âtypical_diagonal_elementâ > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h: In > member function âvoid dealii::FullMatrix<number>::gauss_jordan() [with > number = std::complex<double>]â: > source/full_matrix.inst:994: instantiated from here > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h:1840: > warning: unused variable âtypical_diagonal_elementâ > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h: In > member function âvoid dealii::FullMatrix<number>::gauss_jordan() [with > number = std::complex<float>]â: > source/full_matrix.inst:1001: instantiated from here > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h:1840: > warning: unused variable âtypical_diagonal_elementâ > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h: In > member function âvoid dealii::FullMatrix<number>::gauss_jordan() [with > number = std::complex<long double>]â: > source/full_matrix.inst:1008: instantiated from here > /ima/home/hsun/deal.II/lac/include/lac/full_matrix.templates.h:1840: > warning: unused variable âtypical_diagonal_elementâ > In file included > from /ima/home/hsun/deal.II/lac/include/lac/petsc_sparse_matrix.h:19, > > from > /ima/home/hsun/deal.II/lac/include/lac/petsc_block_sparse_matrix.h:20, > from source/petsc_block_sparse_matrix.cc:14: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h: In member > function âvoid dealii::PETScWrappers::MatrixBase::add(unsigned int, > unsigned int, const unsigned int*, const PetscScalar*, bool, bool)â: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h:1682: > warning: unused variable âierrâ > =====lac==============optimized==MT== > petsc_parallel_block_sparse_matrix.cc > In file included > from /ima/home/hsun/deal.II/lac/include/lac/petsc_full_matrix.h:19, > from source/petsc_full_matrix.cc:15: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h: In member > function âvoid dealii::PETScWrappers::MatrixBase::add(unsigned int, > unsigned int, const unsigned int*, const PetscScalar*, bool, bool)â: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h:1682: > warning: unused variable âierrâ > =====lac==============optimized==MT== petsc_parallel_block_vector.cc > =====lac==============optimized==MT== petsc_parallel_sparse_matrix.cc > =====lac==============optimized==MT== petsc_parallel_vector.cc > In file included from source/petsc_matrix_base.cc:15: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h: In member > function âvoid dealii::PETScWrappers::MatrixBase::add(unsigned int, > unsigned int, const unsigned int*, const PetscScalar*, bool, bool)â: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h:1682: > warning: unused variable âierrâ > =====lac==============optimized==MT== petsc_precondition.cc > =====lac==============optimized==MT== petsc_solver.cc > =====lac==============optimized==MT== petsc_sparse_matrix.cc > =====lac==============optimized==MT== petsc_vector.cc > =====lac==============optimized==MT== petsc_vector_base.cc > =====lac==============optimized==MT== precondition_block.cc > =====lac==============optimized==MT== precondition_block_ez.cc > In file included > from > /ima/home/hsun/deal.II/lac/include/lac/petsc_parallel_sparse_matrix.h:20, > > from > /ima/home/hsun/deal.II/lac/include/lac/petsc_parallel_block_sparse_matrix.h:20, > from source/petsc_parallel_block_sparse_matrix.cc:14: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h: In member > function âvoid dealii::PETScWrappers::MatrixBase::add(unsigned int, > unsigned int, const unsigned int*, const PetscScalar*, bool, bool)â: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h:1682: > warning: unused variable âierrâ > In file included > from > /ima/home/hsun/deal.II/lac/include/lac/petsc_parallel_sparse_matrix.h:20, > from source/petsc_parallel_sparse_matrix.cc:15: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h: In member > function âvoid dealii::PETScWrappers::MatrixBase::add(unsigned int, > unsigned int, const unsigned int*, const PetscScalar*, bool, bool)â: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h:1682: > warning: unused variable âierrâ > In file included from source/petsc_precondition.cc:15: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h: In member > function âvoid dealii::PETScWrappers::MatrixBase::add(unsigned int, > unsigned int, const unsigned int*, const PetscScalar*, bool, bool)â: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h:1682: > warning: unused variable âierrâ > In file included from source/petsc_solver.cc:16: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h: In member > function âvoid dealii::PETScWrappers::MatrixBase::add(unsigned int, > unsigned int, const unsigned int*, const PetscScalar*, bool, bool)â: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h:1682: > warning: unused variable âierrâ > In file included > from /ima/home/hsun/deal.II/lac/include/lac/petsc_sparse_matrix.h:19, > from source/petsc_sparse_matrix.cc:15: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h: In member > function âvoid dealii::PETScWrappers::MatrixBase::add(unsigned int, > unsigned int, const unsigned int*, const PetscScalar*, bool, bool)â: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h:1682: > warning: unused variable âierrâ > =====lac==============optimized==MT== slepc_solver.cc > =====lac==============optimized==MT== slepc_spectral_transformation.cc > =====lac==============optimized==MT== solver.cc > =====lac==============optimized==MT== solver_control.cc > =====lac==============optimized==MT== sparse_decomposition.cc > =====lac==============optimized==MT== sparse_direct.cc > =====lac==============optimized==MT== sparse_ilu.cc > =====lac==============optimized==MT== sparse_matrix.cc > =====lac==============optimized==MT== sparse_matrix_ez.cc > In file included from source/slepc_solver.cc:15: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h: In member > function âvoid dealii::PETScWrappers::MatrixBase::add(unsigned int, > unsigned int, const unsigned int*, const PetscScalar*, bool, bool)â: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h:1682: > warning: unused variable âierrâ > =====lac==============optimized==MT== sparse_mic.cc > In file included from source/slepc_spectral_transformation.cc:15: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h: In member > function âvoid dealii::PETScWrappers::MatrixBase::add(unsigned int, > unsigned int, const unsigned int*, const PetscScalar*, bool, bool)â: > /ima/home/hsun/deal.II/lac/include/lac/petsc_matrix_base.h:1682: > warning: unused variable âierrâ > =====lac==============optimized==MT== sparse_vanka.cc > =====lac==============optimized==MT== sparsity_pattern.cc > =====lac==============optimized==MT== sparsity_tools.cc > =====lac==============optimized==MT== swappable_vector.cc > =====lac==============optimized==MT== tridiagonal_matrix.cc > =====lac==============optimized==MT== trilinos_block_sparse_matrix.cc > =====lac==============optimized==MT== trilinos_block_vector.cc > =====lac==============optimized==MT== trilinos_precondition.cc > =====lac==============optimized==MT== trilinos_precondition_block.cc > =====lac==============optimized==MT== trilinos_solver.cc > =====lac==============optimized==MT== trilinos_solver_block.cc > =====lac==============optimized==MT== trilinos_sparse_matrix.cc > =====lac==============optimized==MT== trilinos_sparsity_pattern.cc > =====lac==============optimized==MT== trilinos_vector.cc > =====lac==============optimized==MT== trilinos_vector_base.cc > =====lac==============optimized==MT== vector.cc > =====lac==============optimized==MT== vector_memory.cc > =====lac==============optimized==MT== vector_view.cc > =====lac==============optimized==MT== Linking library: liblac.so > /usr/bin/ld: /ima/home/hsun/metis/libmetis.a(pmetis.o): relocation > R_X86_64_32 against `a local symbol' can not be used when making a > shared object; recompile with -fPIC > /ima/home/hsun/metis/libmetis.a: could not read symbols: Bad value > collect2: ld returned 1 exit status > make[1]: *** [/ima/home/hsun/deal.II/lib/liblac.so] Error 1 > make[1]: Leaving directory `/ima/imavisitor/hsun/deal.II/lac' > make: *** [laco] Error 2 > > > _______________________________________________ > dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii > _______________________________________________ dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii
