Hello,
I have managed to get the CppUnit library built and installed on AIX 5.3 64bit doing the following:
./configure LDFLAGS="-O2 -q64" CXXFLAGS="-O2 -g -q64 -qrtti=dyna" --enable-shared=no
I could not figure out how to set parameters for "ar" by passing parameters so I went and edited the file "libtool" by changing this
AR_FLAGS="cru"
to this
AR_FLAGS="-X64 -lvq" (these are the ar settings used in my make file)
Installed the lib and headers into the default directories.
Now, when I build my own test application I get this:
xlC_r -O2 -q64 -bnoipath -blibpath:/usr/lpp/db/lib:/usr/lib:/lib -o test/LibTest /usr/local/lib/libcppunit.a /home/me/lib1.a /home/me/lib2.a ... [some others here] ... /home/me/unicode/libbdbunicode.a /usr/local/xerces/xerces-c-src_2_7_0/lib/libxerces-depdom27.0.a /usr/local/xerces/xerces-c-src_2_7_0/lib/libxerces-c27.0.a /usr/local/xml-xalan/c/lib/libxalan-c110.0.a -lpthreads /usr/local/lib/libicuuc28.a /usr/local/lib/libicui18n28.a /usr/local/lib/libicudata28.a -ldl ld: 0711-317 ERROR: Undefined symbol: .CppUnit::Message::Message(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&,const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&) ld: 0711-317 ERROR: Undefined symbol: .CppUnit::SourceLine::SourceLine(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&,int) ld: 0711-317 ERROR: Undefined symbol: .CppUnit::Message::Message(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&) ld: 0711-317 ERROR: Undefined symbol: .CppUnit::Message::addDetail(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&) ld: 0711-317 ERROR: Undefined symbol: .CppUnit::AdditionalMessage::AdditionalMessage(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&) ld: 0711-317 ERROR: Undefined symbol: .CppUnit::Asserter::failNotEqual(std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >,const CppUnit::SourceLine&,const CppUnit::AdditionalMessage&,std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >) ld: 0711-317 ERROR: Undefined symbol: CppUnit::Test::findTestPath(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&,CppUnit::TestPath&) const ld: 0711-317 ERROR: Undefined symbol: CppUnit::Test::findTest(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&) const ld: 0711-317 ERROR: Undefined symbol: CppUnit::Test::resolveTestPath(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&) const ld: 0711-317 ERROR: Undefined symbol: .CppUnit::TextTestRunner::run(std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >,bool,bool,bool) ld: 0711-317 ERROR: Undefined symbol: .CppUnit::TestSuite::TestSuite(std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >) ld: 0711-317 ERROR: Undefined symbol: .CppUnit::TestSuiteBuilderContextBase::getTestNameFor(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&) const ld: 0711-317 ERROR: Undefined symbol: .CppUnit::TestCase::TestCase(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&) ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make: The error code from the last command is 8.
Any pointers?
Thanks cf
Solved the problem!
Saving the full output of the CppUnit build and the build of my own application I was able to compare compiler flags and find the ones I had missed to pass into configure. In my case the full list of parameters now looks like this:
./configure LDFLAGS="-O2 -q64" CXXFLAGS="-O2 -g -qmaxmem=-1 -q64 -qrtti=dyna -D_LARGE_FILES" --disable-shared
cf
Log in to post a comment.
Hello,
I have managed to get the CppUnit library built and installed on AIX 5.3 64bit doing the following:
./configure LDFLAGS="-O2 -q64" CXXFLAGS="-O2 -g -q64 -qrtti=dyna" --enable-shared=no
I could not figure out how to set parameters for "ar" by passing parameters so I went and edited the file "libtool" by
changing this
AR_FLAGS="cru"
to this
AR_FLAGS="-X64 -lvq" (these are the ar settings used in my make file)
Installed the lib and headers into the default directories.
Now, when I build my own test application I get this:
xlC_r -O2 -q64 -bnoipath -blibpath:/usr/lpp/db/lib:/usr/lib:/lib -o test/LibTest /usr/local/lib/libcppunit.a /home/me/lib1.a /home/me/lib2.a ... [some others here]
... /home/me/unicode/libbdbunicode.a /usr/local/xerces/xerces-c-src_2_7_0/lib/libxerces-depdom27.0.a /usr/local/xerces/xerces-c-src_2_7_0/lib/libxerces-c27.0.a /usr/local/xml-xalan/c/lib/libxalan-c110.0.a -lpthreads /usr/local/lib/libicuuc28.a /usr/local/lib/libicui18n28.a /usr/local/lib/libicudata28.a -ldl
ld: 0711-317 ERROR: Undefined symbol: .CppUnit::Message::Message(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&,const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&)
ld: 0711-317 ERROR: Undefined symbol: .CppUnit::SourceLine::SourceLine(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&,int)
ld: 0711-317 ERROR: Undefined symbol: .CppUnit::Message::Message(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&)
ld: 0711-317 ERROR: Undefined symbol: .CppUnit::Message::addDetail(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&)
ld: 0711-317 ERROR: Undefined symbol: .CppUnit::AdditionalMessage::AdditionalMessage(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&)
ld: 0711-317 ERROR: Undefined symbol: .CppUnit::Asserter::failNotEqual(std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >,const CppUnit::SourceLine&,const CppUnit::AdditionalMessage&,std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >)
ld: 0711-317 ERROR: Undefined symbol: CppUnit::Test::findTestPath(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&,CppUnit::TestPath&) const
ld: 0711-317 ERROR: Undefined symbol: CppUnit::Test::findTest(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&) const
ld: 0711-317 ERROR: Undefined symbol: CppUnit::Test::resolveTestPath(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&) const
ld: 0711-317 ERROR: Undefined symbol: .CppUnit::TextTestRunner::run(std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >,bool,bool,bool)
ld: 0711-317 ERROR: Undefined symbol: .CppUnit::TestSuite::TestSuite(std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >)
ld: 0711-317 ERROR: Undefined symbol: .CppUnit::TestSuiteBuilderContextBase::getTestNameFor(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&) const
ld: 0711-317 ERROR: Undefined symbol: .CppUnit::TestCase::TestCase(const std::_LFS_ON::basic_string<char,std::char_traits<char>,std::allocator<char> >&)
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
make: The error code from the last command is 8.
Any pointers?
Thanks
cf
Solved the problem!
Saving the full output of the CppUnit build and the build of my own application I was able to compare compiler flags and find the ones I had missed to pass into configure. In my case the full list of parameters now looks like this:
./configure LDFLAGS="-O2 -q64" CXXFLAGS="-O2 -g -qmaxmem=-1 -q64 -qrtti=dyna -D_LARGE_FILES" --disable-shared
cf