[Insight-users] Installation build errors
Neil Killeen
Neil.Killeen@atnf.csiro.au
Wed, 13 Nov 2002 14:48:53 +1100 (EST)
Hello again
I am getting some errors (compile and link) on trying to build the system.
At this stage, all i want to do is build the basic system
including test programs, for evaluation purposes.
I am using
. Solaris 2.6
. InsightToolkit-1.0.0 (downloaded this week)
. cmake-1.4.6-sparc-sunos57-static-files.tar
. /opt/SUNWspro/bin/cc
/usr/local/gnu/bin/gcc -> gcc-2.95.3-solaris2.6
I generated the make files ok and began the build.
1) Compilation error
On building the system it fails after a while with
gcc -ftemplate-depth-50
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Common
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Algorithms
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/BasicFilters
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Common
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Numerics
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/IO
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Numerics/FEM
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Numerics/Statistics
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/Code/Numerics/vxl
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Numerics/vxl
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/Code/Numerics/vxl/vcl
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Numerics/vxl/vcl
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/SpatialObject
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Utilities/png
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Utilities/zlib
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Utilities/MetaIO
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin -D_PTHREADS -c
/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Common/itkMultiThreader.cxx
-o itkMultiThreader.o
/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Common/itkMultiThreader.cxx:
In function `static int
itk::MultiThreader::GetGlobalDefaultNumberOfThreads()':
/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Common/itkMultiThreader.cxx:93:
implicit declaration of function `int itk::pthread_setconcurrency(...)'
Line 93 of the source is
#if defined(__SVR4) && defined(sun)
pthread_setconcurrency(num);
#endif
Now I tried adding the line
#include <pthread.h>
to itkMultiThreader.cxx, but to no avail. On searching for
pthread.h I found
/usr/local/gnu/lib/gcc-lib/sparc-sun-solaris2.6/3.1.1/include/pthread.h
which is an auto-edited version of
/usr/include/pthread.h
neither of which contains function pthread_setconcurrency
So I commented out the offending line and proceeded ok until linking.
Can someobody advise whether this is an appropriate solution ?
2) Linking error
having now built the library trees ok, the build then failed
once we started linking. Viz.
gcc -ftemplate-depth-50
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Testing/Code/Numerics
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Algorithms
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/BasicFilters
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Common
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Numerics
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/IO
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Numerics/FEM
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Numerics/Statistics
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/Code/Numerics/vxl
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Numerics/vxl
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/Code/Numerics/vxl/vcl
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/Numerics/vxl/vcl
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Code/SpatialObject
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Utilities/png
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Utilities/zlib
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Utilities/MetaIO
-I/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin -D_PTHREADS -c
/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/Testing/Code/Numerics/itkNumericsHeaderTest.cxx
-o itkNumericsHeaderTest.o
gcc -ftemplate-depth-50 itkNumericsHeaderTest.o -L/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin -lpthread
-lthread -ldl -lVXLNumerics -lm -lITKCommon -lITKNumerics -lITKCommon -lVXLNumerics -lm -lpthread -lthread -ldl
-R/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin
-o /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/itkNumericsHeaderTest
Undefined first referenced
symbol in file
streambuf::eback(void) const /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf type_info function /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
string_char_traits<char>::assign(char &, char const &)/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
ostream::write(char const *, int) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKCommon.a(itkObjectFactoryBase.o)
string_char_traits<char>::compare(char const *, char const *, unsigned int)itkNumericsHeaderTest.o
streambuf::sys_write(char const *, int)/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf::sys_close(void) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf::streambuf(int) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
ostream::ostream(int, streambuf *, ostream *)/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
complex<float>::complex(float, float)itkNumericsHeaderTest.o
streambuf::doallocate(void) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf type_info node /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf::gptr(void) const /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
__length_error(char const *) itkNumericsHeaderTest.o
streambuf::epptr(void) const /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
ostream::operator<<(ostream &(*)(ostream &))itkNumericsHeaderTest.o
complex<double>::imag(void) const itkNumericsHeaderTest.o
complex<float>::imag(void) const itkNumericsHeaderTest.o
complex<long double>::imag(void) constitkNumericsHeaderTest.o
streambuf::sputc(int) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
ios::ios(streambuf *, ostream *) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
endl(ostream &) itkNumericsHeaderTest.o
ostream::ios virtual table /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
istream::operator>>(char &) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKCommon.a(itkOutputWindow.o)
string_char_traits<char>::eq(char const &, char const &)/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKCommon.a(itkObjectFactoryBase.o)
string_char_traits<char>::eos(void) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
string_char_traits<char>::set(char *, char const &, unsigned int)/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKCommon.a(itkObjectFactoryBase.o)
cerr itkNumericsHeaderTest.o
streambuf::uflow(void) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf::xsgetn(char *, int) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf::sys_read(char *, int) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
ostream type_info function /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
ios::~ios(void) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf::sys_stat(void *) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
ostream::operator<<(void const *) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKCommon.a(itkEventObject.o)
streambuf::egptr(void) const /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
ostream::operator<<(char const *) itkNumericsHeaderTest.o
streambuf::xsputn(char const *, int)/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf::pbump(int) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
ostream::operator<<(bool) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKCommon.a(itkObjectFactoryBase.o)
ostream::operator<<(double) itkNumericsHeaderTest.o
ostream::operator<<(int) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf::setg(char *, char *, char *)/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf::sys_seek(long, ios::seek_dir)/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
complex<double>::complex(double, double)itkNumericsHeaderTest.o
ostream::operator<<(unsigned int) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKCommon.a(itkExceptionObject.o)
ostream::operator<<(unsigned long) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKCommon.a(itkObject.o)
streambuf::gbump(int) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
ostream type_info node /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
string_char_traits<char>::copy(char *, char const *, unsigned int)itkNumericsHeaderTest.o
streambuf::~streambuf(void) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
streambuf::pptr(void) const /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
complex<long double>::complex(long double, long double)itkNumericsHeaderTest.o
streambuf::pbase(void) const /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
cin /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKCommon.a(itkOutputWindow.o)
streambuf::sync(void) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
string_char_traits<char>::length(char const *)/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKCommon.a(itkObjectFactoryBase.o)
streambuf::setp(char *, char *) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
string_char_traits<char>::move(char *, char const *, unsigned int)itkNumericsHeaderTest.o
complex<double>::real(void) const itkNumericsHeaderTest.o
complex<float>::real(void) const itkNumericsHeaderTest.o
streambuf::pbackfail(int) /DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/libITKNumerics.a(itkOptimizer.o)
complex<long double>::real(void) constitkNumericsHeaderTest.o
__out_of_range(char const *) itkNumericsHeaderTest.o
ld: fatal: Symbol referencing errors. No output written to
/DATA/ELARA_3/nkilleen/itk/InsightToolkit-1.0.0/bin/bin/itkNumericsHeaderTest
collect2: ld returned 1 exit status
so a stream related problem. I am not too uptodate on the latest in the
streams standards, but know that they have evolved. Perhaps my
installation is missing a new (or old) library ?
many thanks
Neil