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

ryuta suzu0037 at aem.umn.edu
Fri Aug 31 19:51:33 MDT 2007


I gave trilinos-8.0.1 a shot and I was able to compile and link 
HDF5_IO.exe. I was also able to run it. I guess we can assume the bug 
was fixed in this release. Thanks a lot.

-Ryuta

ryuta wrote:
> 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
>
>
> ------------------------------------------------------------------------
>
> This body part will be downloaded on demand.



More information about the Trilinos-Users mailing list