gcc auf HPUX mit mpi und mlib
-
Hallo Programmier-Freunde,
ich muss für meinen Chef ein Programmierprojekt anpassen.
Bisher lief es problemlos auf einem Linux-Cluster (MPI).Hier steht nun ein HP Superdome (HP-UX B.11.23 U ia64) mit darauf angepassten MPI (www.hp.com/go/mpi) und MLIB (www.hp.com/go/mlib), die ich beide benötige.
Das Programmierprojekt besteht aus zwei Teilen:
a) Einem sozusagen Kernel, der in ein lib gelinkt wird
b) Einer Anwendung, die den Kernel nutzt.Da (leider) hash_map genutzt wird, bin ich an gcc gebunden.
Ich kann mittels gcc in mpicc bzw. mpicc.mpich die Sourcen einzeln kompilieren (-c). Auch das bauen des Libs klappt soweit gut.
Leider jedoch bekomme ich beim Linken der Anwendung diverse Fehler.
Es sind über 100unsatisfied symbols
.
Ich denke, da werden libraries nicht richtig gefunden oder eingebunden.Auf dem Linux-Cluster konnte es problemlos mit der Option "-fPIC" kompiliert werden.
Kann jemand helfen?Danke und Gruß
Bastian
-
Kann jemand helfen?
Sicher, wenn du uns sagst, was für Fehler das sind und welche Libs du überhaupt eingebunden hast.
-
Hallo,
okay, hier mal die Meldungen (STD-Err):
ld: (Warning) Unsatisfied symbol "__F90_START_IO" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const" in file Main.o ld: Unsatisfied symbol "dCreate_CompCol_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "std::_Rb_tree_increment(std::_Rb_tree_node_base*)" in file ../../lib/libm++.a[Mesh.o] ld: Unsatisfied symbol "__cxa_rethrow" in file ../../lib/libm++.a[MatrixGraph.o] ld: Unsatisfied symbol "std::_Rb_tree_decrement(std::_Rb_tree_node_base*)" in file ../../lib/libm++.a[Mesh.o] ld: Unsatisfied symbol "__gxx_personality_v0" in file Main.o ld: Unsatisfied symbol "std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)" in file ../../lib/libm++.a[Mesh.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) const" in file Main.o ld: Unsatisfied symbol "dgelqf_" in file ../../lib/libm++.a[SVD.o] ld: Unsatisfied symbol "std::basic_ofstream<char, std::char_traits<char> >::~basic_ofstream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_ofstream<char, std::char_traits<char> >::~basic_ofstream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_ofstream<char, std::char_traits<char> >::~basic_ofstream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "virtual thunk to std::basic_ifstream<char, std::char_traits<char> >::~basic_ifstream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "virtual thunk to std::basic_ifstream<char, std::char_traits<char> >::~basic_ifstream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >& std::operator<< <char, std::char_traits<char>, std::allocator<char> >(std::basic_ostream<char, std::char_traits<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)" in file StokesConfiguration.o ld: Unsatisfied symbol "std::basic_ofstream<char, std::char_traits<char> >::basic_ofstream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator+=(char const*)" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "__cxa_allocate_exception" in file /opt/mpi/lib/hpux32/libmpiCC.a[intercepts.o] ld: Unsatisfied symbol "exp" in file ../../lib/libm++.a[Interface.o] ld: Unsatisfied symbol "intMalloc" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "log" in file ../../lib/libm++.a[Parallel.o] ld: Unsatisfied symbol "__cxa_begin_catch" in file ../../lib/libm++.a[MatrixGraph.o] ld: Unsatisfied symbol "pow" in file ../../lib/libm++.a[LinearSolver.o] ld: Unsatisfied symbol "sin" in file StokesConfiguration.o ld: Unsatisfied symbol "typeinfo for std::basic_ifstream<char, std::char_traits<char> >" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "dgeqrf_" in file ../../lib/libm++.a[SVD.o] ld: Unsatisfied symbol "std::basic_istream<char, std::char_traits<char> >::getline(char*, long)" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "operator delete[](void*)" in file ../../lib/libm++.a[MatrixGraph.o] ld: Unsatisfied symbol "__cxa_pure_virtual" in file Main.o ld: Unsatisfied symbol "std::_List_node_base::swap(std::_List_node_base&, std::_List_node_base&)" in file ../../lib/libm++.a[Preconditioner.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "virtual thunk to std::basic_ofstream<char, std::char_traits<char> >::~basic_ofstream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "virtual thunk to std::basic_ofstream<char, std::char_traits<char> >::~basic_ofstream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "operator delete(void*)" in file Main.o ld: Unsatisfied symbol "dgesvd_" in file ../../lib/libm++.a[SVD.o] ld: Unsatisfied symbol "dgetri_" in file ../../lib/libm++.a[Small.o] ld: Unsatisfied symbol "dgetrs_" in file ../../lib/libm++.a[Small.o] ld: (Warning) Unsatisfied symbol "__F90_F_INQUIRE" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "superlu_malloc" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "std::_Rb_tree_increment(std::_Rb_tree_node_base const*)" in file ../../lib/libm++.a[Preconditioner.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)" in file Main.o ld: Unsatisfied symbol "virtual thunk to std::basic_istream<char, std::char_traits<char> >::~basic_istream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "virtual thunk to std::basic_istream<char, std::char_traits<char> >::~basic_istream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_ifstream<char, std::char_traits<char> >::~basic_ifstream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_ifstream<char, std::char_traits<char> >::~basic_ifstream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_ifstream<char, std::char_traits<char> >::~basic_ifstream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::_List_node_base::unhook()" in file ../../lib/libm++.a[Preconditioner.o] ld: Unsatisfied symbol "StatFree" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char)" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "dorglq_" in file ../../lib/libm++.a[SVD.o] ld: Unsatisfied symbol "dorgqr_" in file ../../lib/libm++.a[SVD.o] ld: Unsatisfied symbol "sp_preorder" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "StatInit" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "std::basic_ifstream<char, std::char_traits<char> >::basic_ifstream(char const*, std::_Ios_Openmode)" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_istream<char, std::char_traits<char> >::~basic_istream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "operator new[](unsigned long)" in file ../../lib/libm++.a[MatrixGraph.o] ld: Unsatisfied symbol "std::basic_istream<char, std::char_traits<char> >::~basic_istream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "operator new(unsigned long)" in file Main.o ld: (Warning) Unsatisfied symbol "__F90_END_IO" in file /usr/lib/hpux32/libsolvers.so ld: (Warning) Unsatisfied symbol "__F90_PARSE_FMT" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "std::_List_node_base::hook(std::_List_node_base*)" in file ../../lib/libm++.a[Mesh.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const" in file ../../lib/libm++.a[MatrixGraph.o] ld: Unsatisfied symbol "std::basic_ifstream<char, std::char_traits<char> >::basic_ifstream(char const*, std::_Ios_Openmode)" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)" in file ../../lib/libm++.a[Point.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)" in file StokesConfiguration.o ld: Unsatisfied symbol "std::ios_base::Init::~Init()" in file Main.o ld: Unsatisfied symbol "dCreate_Dense_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))" in file StokesConfiguration.o ld: Unsatisfied symbol "std::ios_base::Init::Init()" in file Main.o ld: (Warning) Unsatisfied symbol "_cexp" in file /usr/lib/hpux32/libveclib.so ld: (Warning) Unsatisfied symbol "log10f" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "superlu_free" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)" in file StokesConfiguration.o ld: Unsatisfied symbol "std::basic_ofstream<char, std::char_traits<char> >::open(char const*, std::_Ios_Openmode)" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "dgels_" in file ../../lib/libm++.a[Small.o] ld: Unsatisfied symbol "vtable for __cxxabiv1::__vmi_class_type_info" in file ../../lib/libm++.a[Algebra.o] ld: (Warning) Unsatisfied symbol "_cexpf" in file /usr/lib/hpux32/libveclib.so ld: (Warning) Unsatisfied symbol "__F90_F_OPEN" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "vtable for __cxxabiv1::__class_type_info" in file Main.o ld: Unsatisfied symbol "Destroy_SuperNode_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: (Warning) Unsatisfied symbol "__F90_DO_IO_ITEM" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "sp_ienv" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "dPrint_CompCol_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::c_str() const" in file ../../lib/libm++.a[Point.o] ld: Unsatisfied symbol "dPrint_SuperNode_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >::operator<<(short)" in file ../../lib/libm++.a[MatrixGraph.o] ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >::operator<<(bool)" in file ../../lib/libm++.a[Algebra.o] ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >::operator<<(double)" in file ../../lib/libm++.a[Algebra.o] ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >::operator<<(int)" in file StokesConfiguration.o ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >::operator<<(long)" in file ../../lib/libm++.a[Parallel.o] ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >::operator<<(unsigned long)" in file ../../lib/libm++.a[MatrixGraph.o] ld: Unsatisfied symbol "std::allocator<char>::~allocator()" in file Main.o ld: (Warning) Unsatisfied symbol "_pow" in file /usr/lib/hpux32/libveclib.so ld: Unsatisfied symbol "std::allocator<char>::allocator()" in file Main.o ld: Unsatisfied symbol "std::__throw_length_error(char const*)" in file ../../lib/libm++.a[MatrixGraph.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long)" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::append(char const*)" in file StokesConfiguration.o ld: Unsatisfied symbol "__cxa_finalize" in file /opt/mpi/lib/hpux32/libmpiCC.a[intercepts.o] ld: Unsatisfied symbol "Destroy_CompCol_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: (Warning) Unsatisfied symbol "_powf" in file /usr/lib/hpux32/libveclib.so ld: (Warning) Unsatisfied symbol "_pown" in file /usr/lib/hpux32/libveclib.so ld: Unsatisfied symbol "get_perm_c" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "vtable for __cxxabiv1::__si_class_type_info" in file Main.o ld: Unsatisfied symbol "Destroy_SuperMatrix_Store" in file ../../lib/libm++.a[Sparse.o] ld: (Warning) Unsatisfied symbol "_csqrtf" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "typeinfo for std::basic_ofstream<char, std::char_traits<char> >" in file ../../lib/libm++.a[IO.o] ld: (Warning) Unsatisfied symbol "_csqrt" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "std::basic_ofstream<char, std::char_traits<char> >::basic_ofstream(char const*, std::_Ios_Openmode)" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "dgstrf" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "dgstrs" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "_Unwind_Resume" in file Main.o ld: Unsatisfied symbol "__cxa_end_catch" in file ../../lib/libm++.a[MatrixGraph.o] ld: Unsatisfied symbol "dpotri_" in file ../../lib/libm++.a[Small.o] ld: Unsatisfied symbol "dpotrf_" in file ../../lib/libm++.a[Small.o] ld: Unsatisfied symbol "zhegv_" in file ../../lib/libm++.a[Distribution.o] ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)" in file StokesConfiguration.o ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::append(char const*, unsigned long)" in file CFD.o ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare(char const*) const" in file Main.o ld: Unsatisfied symbol "virtual thunk to std::basic_ostream<char, std::char_traits<char> >::~basic_ostream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "virtual thunk to std::basic_ostream<char, std::char_traits<char> >::~basic_ostream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::append(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)" in file CFD.o ld: Unsatisfied symbol "std::cerr" in file StokesConfiguration.o ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string()" in file CFD.o ld: Unsatisfied symbol "std::_List_node_base::transfer(std::_List_node_base*, std::_List_node_base*)" in file ../../lib/libm++.a[Preconditioner.o] ld: Unsatisfied symbol "std::cout" in file CFD.o ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >::~basic_ostream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >::~basic_ostream()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()" in file Main.o ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >::flush()" in file CFD.o ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::reserve(unsigned long)" in file CFD.o ld: Unsatisfied symbol "std::basic_ostream<char, std::char_traits<char> >::operator<<(void const*)" in file ../../lib/libm++.a[Mesh.o] ld: Unsatisfied symbol "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(char const*)" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "__cxa_atexit" in file /opt/mpi/lib/hpux32/libmpiCC.a[intercepts.o] ld: (Warning) Unsatisfied symbol "_pownf" in file /usr/lib/hpux32/libveclib.so ld: (Warning) Unsatisfied symbol "__F90_F_REW" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "std::basic_ios<char, std::char_traits<char> >::basic_ios()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "typeinfo for std::basic_istream<char, std::char_traits<char> >" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "typeinfo for std::basic_ostream<char, std::char_traits<char> >" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "__cxa_personality_routine" in file /opt/mpi/lib/hpux32/libmpiCC.a[intercepts.o] ld: Unsatisfied symbol "std::basic_ios<char, std::char_traits<char> >::~basic_ios()" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "sqrt" in file ../../lib/libm++.a[Algebra.o] ld: Unsatisfied symbol "__cxa_throw" in file /opt/mpi/lib/hpux32/libmpiCC.a[intercepts.o] ld: Unsatisfied symbol "Destroy_CompCol_Permuted" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "std::basic_ios<char, std::char_traits<char> >::operator void*() const" in file ../../lib/libm++.a[IO.o] ld: Unsatisfied symbol "dpptrf_" in file ../../lib/libm++.a[LapackMatrix.o] ld: (Warning) Unsatisfied symbol "__F90_F_CLOSE" in file /usr/lib/hpux32/libsolvers.so 17 warnings. 130 errors. collect2: ld returned 1 exit status Stop.
Ich übersetze mit den Optionen
mpiCC.mpich -fPIC -DPIC -c
und der Umgebungsvariablen MPI_CXX = /usr/local/bin/gcc. Die Option -DPIC habe ich mittelt libtool (auch gnu) rausgefunden.
Das Linken für das Archiv libm++ machen ich mitar cru $(LIB) $(OBJECTS) ranlib $(LIB)
und das gesamte Kompilieren am Ende via
mpiCC.mpich -o ../../M++ Main.o StokesConfiguration.o CFD.o -L../../lib -lm++ -lmpi -lveclib -lsolvers -lsuperlu_dist
Aus dieser Zeile gehen dann ja auch die eingebundenen Bibliotheken hervor.
Ich hoffe, das hilft.Danke und Gruß
Bastian
-
gcc ist ein C Compiler, der Linkeraufruf den du da machst, linkt daher nur die C-Runtime. Dein Programm ist aber nach dem was ich sehe C++. Mach aus gcc entweder g++ oder link explizit gegen die C++-Runtime mittels
-lstdc++
-
SeppJ schrieb:
gcc ist ein C Compiler, der Linkeraufruf den du da machst, linkt daher nur die C-Runtime. Dein Programm ist aber nach dem was ich sehe C++. Mach aus gcc entweder g++ oder link explizit gegen die C++-Runtime mittels
-lstdc++
Vielen Dank für die Info.
Ich hatte vergessen zu erwähnen, dass g++ nicht installiert ist - und nicht wird.
Ich hab jetzt mit-lstdc++
kompiliert - und die Fehlermeldungen sind enorm weniger geworden.
Hier der Rest:ld: (Warning) Unsatisfied symbol "__F90_START_IO" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "dCreate_CompCol_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: (Warning) Unsatisfied symbol "_Unwind_SetIP" in file /usr/local/lib/gcc/ia64-hp-hpux11.23/3.4.3/../../../libstdc++.so ld: (Warning) Unsatisfied symbol "_Unwind_SetGR" in file /usr/local/lib/gcc/ia64-hp-hpux11.23/3.4.3/../../../libstdc++.so ld: (Warning) Unsatisfied symbol "_Unwind_GetIP" in file /usr/local/lib/gcc/ia64-hp-hpux11.23/3.4.3/../../../libstdc++.so ld: (Warning) Unsatisfied symbol "_Unwind_GetGR" in file /usr/local/lib/gcc/ia64-hp-hpux11.23/3.4.3/../../../libstdc++.so ld: Unsatisfied symbol "dgelqf_" in file ../../lib/libm++.a[SVD.o] ld: Unsatisfied symbol "intMalloc" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "dgeqrf_" in file ../../lib/libm++.a[SVD.o] ld: Unsatisfied symbol "dgesvd_" in file ../../lib/libm++.a[SVD.o] ld: Unsatisfied symbol "dgetri_" in file ../../lib/libm++.a[Small.o] ld: Unsatisfied symbol "dgetrs_" in file ../../lib/libm++.a[Small.o] ld: (Warning) Unsatisfied symbol "__F90_F_INQUIRE" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "superlu_malloc" in file ../../lib/libm++.a[Sparse.o] ld: (Warning) Unsatisfied symbol "_Unwind_RaiseException" in file /usr/local/lib/gcc/ia64-hp-hpux11.23/3.4.3/../../../libstdc++.so ld: Unsatisfied symbol "StatFree" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "dorglq_" in file ../../lib/libm++.a[SVD.o] ld: Unsatisfied symbol "dorgqr_" in file ../../lib/libm++.a[SVD.o] ld: Unsatisfied symbol "sp_preorder" in file ../../lib/libm++.a[Sparse.o] ld: (Warning) Unsatisfied symbol "_Unwind_GetRegionStart" in file /usr/local/lib/gcc/ia64-hp-hpux11.23/3.4.3/../../../libstdc++.so ld: Unsatisfied symbol "StatInit" in file ../../lib/libm++.a[Sparse.o] ld: (Warning) Unsatisfied symbol "__F90_END_IO" in file /usr/lib/hpux32/libsolvers.so ld: (Warning) Unsatisfied symbol "__F90_PARSE_FMT" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "dCreate_Dense_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "superlu_free" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "dgels_" in file ../../lib/libm++.a[Small.o] ld: (Warning) Unsatisfied symbol "__F90_F_OPEN" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "Destroy_SuperNode_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: (Warning) Unsatisfied symbol "__F90_DO_IO_ITEM" in file /usr/lib/hpux32/libsolvers.so ld: Unsatisfied symbol "sp_ienv" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "dPrint_CompCol_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "dPrint_SuperNode_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "__cxa_finalize" in file /opt/mpi/lib/hpux32/libmpiCC.a[intercepts.o] ld: Unsatisfied symbol "Destroy_CompCol_Matrix" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "get_perm_c" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "Destroy_SuperMatrix_Store" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "dgstrf" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "dgstrs" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "_Unwind_Resume" in file Main.o ld: Unsatisfied symbol "dpotri_" in file ../../lib/libm++.a[Small.o] ld: Unsatisfied symbol "dpotrf_" in file ../../lib/libm++.a[Small.o] ld: Unsatisfied symbol "zhegv_" in file ../../lib/libm++.a[Distribution.o] ld: Unsatisfied symbol "__cxa_atexit" in file /opt/mpi/lib/hpux32/libmpiCC.a[intercepts.o] ld: (Warning) Unsatisfied symbol "__F90_F_REW" in file /usr/lib/hpux32/libsolvers.so ld: (Warning) Unsatisfied symbol "_Unwind_GetLanguageSpecificData" in file /usr/local/lib/gcc/ia64-hp-hpux11.23/3.4.3/../../../libstdc++.so ld: Unsatisfied symbol "__cxa_personality_routine" in file /opt/mpi/lib/hpux32/libmpiCC.a[intercepts.o] ld: Unsatisfied symbol "Destroy_CompCol_Permuted" in file ../../lib/libm++.a[Sparse.o] ld: Unsatisfied symbol "dpptrf_" in file ../../lib/libm++.a[LapackMatrix.o] ld: (Warning) Unsatisfied symbol "_Unwind_DeleteException" in file /usr/local/lib/gcc/ia64-hp-hpux11.23/3.4.3/../../../libstdc++.so ld: (Warning) Unsatisfied symbol "__F90_F_CLOSE" in file /usr/lib/hpux32/libsolvers.so 16 warnings. 34 errors. collect2: ld returned 1 exit status Stop.
Kann noch jemand weiter helfen?
Danke erneut und Gruß
Barry1
-
Barry1 schrieb:
SeppJ schrieb:
gcc ist ein C Compiler, der Linkeraufruf den du da machst, linkt daher nur die C-Runtime. Dein Programm ist aber nach dem was ich sehe C++. Mach aus gcc entweder g++ oder link explizit gegen die C++-Runtime mittels
-lstdc++
Vielen Dank für die Info.
Ich hatte vergessen zu erwähnen, dass g++ nicht installiert ist - und nicht wird.
Ich hab jetzt mit-lstdc++
kompiliert - und die Fehlermeldungen sind enorm weniger geworden.Das sieht mir wiederum nach Symbolen aus, die dann wiederum von der C++-Runtime verwendet werden. Da musst du wohl rausfinden, in welchen Bibliothek diese definiert werden (die Namen mal bei Google eintippen) und hoffen, dass diese auch auf dem System verfügbar sind.
Ansonsten: Du kannst dir den g++ doch auch lokal installieren. Es reicht ja der gcc, um den g++ zu compilieren
.
-
SeppJ schrieb:
Ansonsten: Du kannst dir den g++ doch auch lokal installieren. Es reicht ja der gcc, um den g++ zu compilieren
.
Hallo,
das ist eine super Idee. Hab ich eben probiert - und dazu benötige ich gmp.
Das jedoch geht nicht so recht.
./configure läuft sauber durch.
make antwortet dann mitMaking all in mpn /bin/sh ../libtool --mode=compile gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I . -I.. -D__GMP_WITHIN_GMP -I.. -DOPERATION_`echo fib_table | sed 's/_$//'` -milp32 -O2 -mtune=itanium2 -c -o fib_table.lo fib_table.c gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I. -I.. -D__GMP_WITHIN_GMP -I.. -DOPERATION _fib_table -milp32 -O2 -mtune=itanium2 -c fib_table.c -fPIC -DPIC -o .libs/fib_ table.o In file included from fib_table.c:4: ../gmp-impl.h:187: error: parse error before "gmp_uint_least32_t" ../gmp-impl.h:187: warning: type defaults to `int' in declaration of `gmp_uint_l east32_t' ../gmp-impl.h:187: warning: data definition has no type or storage class ../gmp-impl.h:3262: error: parse error before "gmp_uint_least32_t" ../gmp-impl.h:3262: warning: no semicolon at end of struct or union ../gmp-impl.h:3262: warning: no semicolon at end of struct or union ../gmp-impl.h:3266: warning: type defaults to `int' in declaration of `s' ../gmp-impl.h:3266: warning: data definition has no type or storage class ../gmp-impl.h:3268: error: parse error before '}' token *** Error exit code 1
Hmmmm... Und nun? Sorry - aber ich sehe nur die Fehler in
gmp-impl.h
aber wie kann das bei einem stable build kommen?Gruß
Basti