[Trilinos-Users] Error with --enable-epetraext-hdf5

ryuta suzu0037 at aem.umn.edu
Fri Aug 3 11:30:25 MDT 2007


Hi,

I've been able to build most trilinos packages without problem until I 
added HDF5 support for EpetraExt.

The problem occurs when building an example for HDF5-IO, specifically at 
link stage.

My guess is that libepetraext is not built correctly and the linker gets 
confused to resolve the symbols.
gcc-4.2.1 is used and I suspect the compiler is a culprit.


The following is the error message from linker:

/usr/local/bin/mpicxx  -g -O2  -L/home/ryuta/Development/lib  -o 
HDF5_IO.exe  HDF5_IO-HDF5_IO.o -L/home/ryuta/Development/lib  
-L/home/ryuta/Development/src/trilinos-7.0.9-build/packages/epetraext/src  
-lepetraext -L/home/ryuta/Development/lib  
-L/home/ryuta/Development/src/trilinos-7.0.9-build/packages/epetra/src  
-lepetra -llapack -lblas -lmetis -lumfpack -lamd -lhdf5   
-L/home/ryuta/Development/lib -L/usr/local/lib -L. 
-L/usr/lib/gcc/i686-pc-linux-gnu/4.2.1 
-L/usr/lib/gcc/i686-pc-linux-gnu/4.2.1/../../.. -lmetis -lumfpack -lamd 
-lhdf5 -lmpi_f77 -lmpi -lopen-rte -lopen-pal -ldl -lnsl -lutil 
-lgfortranbegin -lgfortran -lm -lgcc_s -lpthread  
-L/home/ryuta/Development/lib  
-L/home/ryuta/Development/src/trilinos-7.0.9-build/packages/triutils/src 
-ltriutils -L/home/ryuta/Development/lib  
-L/home/ryuta/Development/src/trilinos-7.0.9-build/packages/epetra/src  
-lepetra -llapack -lblas -lmetis -lumfpack -lamd -lhdf5   
-L/home/ryuta/Development/lib -L/usr/local/lib -L. 
-L/usr/lib/gcc/i686-pc-linux-gnu/4.2.1 
-L/usr/lib/gcc/i686-pc-linux-gnu/4.2.1/../../.. -lmetis -lumfpack -lamd 
-lhdf5 -lmpi_f77 -lmpi -lopen-rte -lopen-pal -ldl -lnsl -lutil 
-lgfortranbegin -lgfortran -lm -lgcc_s -lpthread  -lblas -lmetis 
-lumfpack -lamd -lhdf5   -L/home/ryuta/Development/lib -L/usr/local/lib 
-L. -L/usr/lib/gcc/i686-pc-linux-gnu/4.2.1 
-L/usr/lib/gcc/i686-pc-linux-gnu/4.2.1/../../.. -lmetis -lumfpack -lamd 
-lhdf5 -lmpi_f77 -lmpi -lopen-rte -lopen-pal -ldl -lnsl -lutil 
-lgfortranbegin -lgfortran -lm -lgcc_s -lpthread  
-L/home/ryuta/Development/lib  
-L/home/ryuta/Development/src/trilinos-7.0.9-build/packages/teuchos/src 
-lteuchos -lmetis -lumfpack -lamd -lhdf5  -llapack -lblas  
-L/home/ryuta/Development/lib -L/usr/local/lib -L. 
-L/usr/lib/gcc/i686-pc-linux-gnu/4.2.1 
-L/usr/lib/gcc/i686-pc-linux-gnu/4.2.1/../../.. -lmetis -lumfpack -lamd 
-lhdf5 -lmpi_f77 -lmpi -lopen-rte -lopen-pal -ldl -lnsl -lutil 
-lgfortranbegin -lgfortran -lm -lgcc_s -lpthread -lzoltan -lparmetis 
-lmetis -lmetis -lumfpack -lamd -lhdf5  -llapack -lblas  
-L/home/ryuta/Development/lib -L/usr/local/lib -L. 
-L/usr/lib/gcc/i686-pc-linux-gnu/4.2.1 
-L/usr/lib/gcc/i686-pc-linux-gnu/4.2.1/../../.. -lmetis -lumfpack -lamd 
-lhdf5 -lmpi_f77 -lmpi -lopen-rte -lopen-pal -ldl -lnsl -lutil 
-lgfortranbegin -lgfortran -lm -lgcc_s -lpthread -lzoltan -lparmetis 
-lmetis -lmetis -lumfpack -lamd -lhdf5
HDF5_IO-HDF5_IO.o: In function `main':
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:57: 
undefined reference to `EpetraExt::HDF5::HDF5(Epetra_Comm const&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:60: 
undefined reference to `EpetraExt::HDF5::Create(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> >)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:70: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, Epetra_Map const&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:72: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, Epetra_RowMatrix 
const&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:74: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
Epetra_MultiVector const&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:75: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
Epetra_MultiVector const&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:77: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, int)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:78: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, double)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:79: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, std::basic_string<char, std::char_traits<char>, 
std::allocator<char> > const&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:80: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, std::basic_string<char, std::char_traits<char>, 
std::allocator<char> > const&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:81: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, std::basic_string<char, std::char_traits<char>, 
std::allocator<char> > const&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:83: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, int)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:84: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, int)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:87: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
Teuchos::ParameterList const&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:92: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, int, int, void*)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:96: 
undefined reference to `EpetraExt::HDF5::Write(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, int, int, void*)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:114: 
undefined reference to 
`EpetraExt::HDF5::IsContained(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> >)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:116: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, Epetra_Map*&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:117: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, Epetra_Map 
const&, Epetra_Map const&, Epetra_CrsMatrix*&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:130: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, int&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:135: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
Epetra_MultiVector*&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:136: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
Epetra_MultiVector*&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:142: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, int&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:143: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, int&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:144: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, int, int, void*)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:145: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, int, int, void*)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:149: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, std::basic_string<char, std::char_traits<char>, 
std::allocator<char> >&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:152: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
Teuchos::ParameterList&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:122: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, int&)'
../../../../../trilinos-7.0.9/packages/epetraext/example/inout/HDF5_IO.cpp:124: 
undefined reference to `EpetraExt::HDF5::Read(std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, Epetra_Map 
const&, Epetra_Map const&, Epetra_CrsMatrix*&)'
collect2: ld returned 1 exit status
make[2]: *** [HDF5_IO.exe] Error 1
make[2]: Leaving directory 
`/home/ryuta/Development/src/trilinos-7.0.9-build/packages/epetraext/example/inout'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory 
`/home/ryuta/Development/src/trilinos-7.0.9-build/packages/epetraext/example'


FYI:

nm src/libepetraext.a | grep HDF5
EpetraExt_HDF5.o:
00000070 t _GLOBAL__I__ZN9EpetraExt4HDF5C2ERK11Epetra_Comm
00000fc0 T _ZN9EpetraExt4HDF511IsContainedESs
00016bd0 T _ZN9EpetraExt4HDF517ReadMapPropertiesERKSsRiS3_S3_
00017b10 T _ZN9EpetraExt4HDF522ReadBlockMapPropertiesERKSsRiS3_S3_S3_
00015700 T _ZN9EpetraExt4HDF522ReadCrsGraphPropertiesERKSsRiS3_S3_S3_S3_
00013c00 T 
_ZN9EpetraExt4HDF523ReadCrsMatrixPropertiesERKSsRiS3_S3_S3_S3_RdS4_
00016090 T _ZN9EpetraExt4HDF523ReadIntVectorPropertiesERKSsRi
000208c0 T _ZN9EpetraExt4HDF525ReadMultiVectorPropertiesERKSsRiS3_
0001e420 T _ZN9EpetraExt4HDF526ReadIntDistArrayPropertiesERKSsRiS3_
0001bf80 T _ZN9EpetraExt4HDF529ReadDoubleDistArrayPropertiesERKSsRiS3_
00005250 T _ZN9EpetraExt4HDF54OpenESsi
000167f0 T _ZN9EpetraExt4HDF54ReadERKSsRK10Epetra_MapRP16Epetra_IntVector
000250b0 T _ZN9EpetraExt4HDF54ReadERKSsRK10Epetra_MapRP18Epetra_MultiVector
0001d720 T _ZN9EpetraExt4HDF54ReadERKSsRK10Epetra_MapRPNS_9DistArrayIdEE
0001fbc0 T _ZN9EpetraExt4HDF54ReadERKSsRK10Epetra_MapRPNS_9DistArrayIiEE
00014b30 T _ZN9EpetraExt4HDF54ReadERKSsRK10Epetra_MapS5_RP15Epetra_CrsGraph
00014540 T _ZN9EpetraExt4HDF54ReadERKSsRK10Epetra_MapS5_RP16Epetra_CrsMatrix
00026d00 T _ZN9EpetraExt4HDF54ReadERKSsRN7Teuchos13ParameterListE
00017400 T _ZN9EpetraExt4HDF54ReadERKSsRP10Epetra_Map
00018340 T _ZN9EpetraExt4HDF54ReadERKSsRP15Epetra_BlockMap
00015fb0 T _ZN9EpetraExt4HDF54ReadERKSsRP15Epetra_CrsGraph
00014a50 T _ZN9EpetraExt4HDF54ReadERKSsRP16Epetra_CrsMatrix
00016aa0 T _ZN9EpetraExt4HDF54ReadERKSsRP16Epetra_IntVector
00021e90 T _ZN9EpetraExt4HDF54ReadERKSsRP18Epetra_MultiVector
0001d550 T _ZN9EpetraExt4HDF54ReadERKSsRPNS_9DistArrayIdEE
0001f9f0 T _ZN9EpetraExt4HDF54ReadERKSsRPNS_9DistArrayIiEE
00003860 T _ZN9EpetraExt4HDF54ReadERKSsS2_RSs
00011a80 T _ZN9EpetraExt4HDF54ReadERKSsS2_Rd
00012b40 T _ZN9EpetraExt4HDF54ReadERKSsS2_Ri
00001e60 T _ZN9EpetraExt4HDF54ReadERKSsS2_iiPv
000000e0 T _ZN9EpetraExt4HDF54ReadERKSsS2_iiiPv
0001b6b0 T _ZN9EpetraExt4HDF55WriteERKSsRK10Epetra_Map
0001ba30 T _ZN9EpetraExt4HDF55WriteERKSsRK15Epetra_BlockMap
0001ab20 T _ZN9EpetraExt4HDF55WriteERKSsRK15Epetra_CrsGraph
0001b310 T _ZN9EpetraExt4HDF55WriteERKSsRK16Epetra_IntVector
00019f30 T _ZN9EpetraExt4HDF55WriteERKSsRK16Epetra_RowMatrix
00025190 T _ZN9EpetraExt4HDF55WriteERKSsRK18Epetra_MultiVector
000296c0 T _ZN9EpetraExt4HDF55WriteERKSsRKN7Teuchos13ParameterListE
0001dbc0 T _ZN9EpetraExt4HDF55WriteERKSsRKNS_9DistArrayIdEE
00020060 T _ZN9EpetraExt4HDF55WriteERKSsRKNS_9DistArrayIiEE
0000f280 T _ZN9EpetraExt4HDF55WriteERKSsS2_S2_
00018d40 T _ZN9EpetraExt4HDF55WriteERKSsS2_d
00019640 T _ZN9EpetraExt4HDF55WriteERKSsS2_i
00002f60 T _ZN9EpetraExt4HDF55WriteERKSsS2_iiPv
00001470 T _ZN9EpetraExt4HDF55WriteERKSsS2_iiiPKv
00005980 T _ZN9EpetraExt4HDF56CreateESs
000000c0 T _ZN9EpetraExt4HDF5C1ERK11Epetra_Comm
00000000 T _ZN9EpetraExt4HDF5C2ERK11Epetra_Comm
EpetraExt_HDF5_DistObject.o:
00000050 t _GLOBAL__I__ZN9EpetraExt4HDF55WriteERKSsRKNS_6HandleE
         U _ZN9EpetraExt4HDF511IsContainedESs
00000070 T _ZN9EpetraExt4HDF520ReadHandlePropertiesERKSsRSsRi
00000ec0 T _ZN9EpetraExt4HDF54ReadERKSsRNS_6HandleE
         U _ZN9EpetraExt4HDF54ReadERKSsS2_RSs
         U _ZN9EpetraExt4HDF54ReadERKSsS2_Rd
         U _ZN9EpetraExt4HDF54ReadERKSsS2_Ri
         U _ZN9EpetraExt4HDF54ReadERKSsS2_iiiPv
00001d30 T _ZN9EpetraExt4HDF55WriteERKSsRKNS_6HandleE
         U _ZN9EpetraExt4HDF55WriteERKSsS2_S2_
         U _ZN9EpetraExt4HDF55WriteERKSsS2_d
         U _ZN9EpetraExt4HDF55WriteERKSsS2_i
         U _ZN9EpetraExt4HDF55WriteERKSsS2_iiiPKv


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://software.sandia.gov/mailman/private/trilinos-users/attachments/20070803/fbf007c7/attachment-0001.html


More information about the Trilinos-Users mailing list