FUKUDA Fumiki
ffuku****@ntes*****
2002年 6月 7日 (金) 09:34:46 JST
επιστημηです。 --- "[Cuppa-users:21] 【確認】 CppUnit について" / TOMOKAZU / 2002/06/06 20:30:30 +0900 --- >開発業務にXPの新風を興そうと青二才ながら奮闘中です。 がんばれワカゾー! >開発言語も今回からC++(初めて)ということで、 >このたび、こちらのMLに参加させて頂いております。 cppll****@freem***** もよろしく^^; >GNUでは、正常に動作確認できているのですが、 >Forte環境にてcppunit-1.8.0を展開して >インストールは成功したように見えるのですが、 >自分のサンプルプログラムのリンケージで失敗します。 >何が原因なのかすら検討がつきません。 ひょっとするとコレかな...? # CppUnitのBugReport-forumから見つけたもの: [ 544864 ] fails to build for SUN Forte C++ Summary: fails to build for SUN Forte C++ Cppunit version 1.8.0 Compiler used: CC: Sun WorkShop 6 update 1 C++ 5.2 Patch 109508-07 2001/12/13 Machine Information : System = SunOS Node = Release = 5.8 KernelID = Generic_108528-10 Machine = sun4u BusType = <unknown> Serial = <unknown> Users = <unknown> OEM# = 0 Origin# = 1 NumCPU = 4 Steps ./configure CC=CC CXX=CC ... ... make make check /opt/cm/local/bin/make hierarchy make[1]: Entering directory `/home/hxs1/cppunit-1.8.0/examples/hierarchy' /bin/sh ../../libtool --mode=link CC -g -o hierarchy BoardGame.o Chess.o main.o ../../src/cppunit/libcppunit.la CC -g -o .libs/hierarchy BoardGame.o Chess.o main.o ../../src/cppunit/.libs/libcppunit.so -R/usr/local/lib ild: (undefined symbol) std::pair<__rwstd::__rb_tree<CppUnit::TestFactory*,CppUnit::TestFactory*,__rwstd::__ident<CppUnit::TestFactory*,CppUnit: :TestFactory*>,std::less<CppUnit::TestFactory*>,std::allocator<CppUnit::TestFactory*> >::iterator,bool>__rwstd::__rb_tree<CppUnit::TestFactory*,CppUnit::TestFactory*,__rwstd::__ident<CppUnit::TestFactory*,C ppUnit::TestFactory*>,std::less<CppUnit::TestFactory*>,std::allocator<CppUnit::TestFactory*> >::insert(CppUnit::TestFactory*const&) -- referenced in ../../src/cppunit/.libs/libcppunit.so (snip) make[1]: *** [hierarchy] Error 5 make[1]: Leaving directory `/home/hxs1/cppunit-1.8.0/examples/hierarchy' make: *** [check-am] Error 2 ...未定義シンボルが山のように出ちゃったってことらしい。 やまださんとこもこんなの? で、この報告にreplyが付いてます: This problem is solved by changing the linking steps. In Forte C++ compiler for Solaris all the linking has to go via CC and ar, ld should not be run directly. for archive use CC -xar and for linking and generating the .so use CC -G この問題はリンクのトコいぢればよさそ。 Forte C++でリンクするときにゃ CC と ar を使え。 ld を直接使ってはイケナイ。 アーカイブ作るなら CC -xar だし、 .so 作るなら CC -G だぞ。 ...だそうです。 さらに最新の INSTALL-unix には: Solaris/Sun 6.0 compiler ------------------------ Sun 6.0 compiler requires the "-pta -instances=static" options. 'make check' has been reported to fail to build, but 'make install' works. Sun 6.0 のばやい "-pta -instances=static" を指定しやがれ 'make check'はコケるかもしんねーけど、'make install'はイケるはづ ...だってさ。 >どうにかしてForte上に「河童軍団」を適用したいのですが・・・。 上記の内容が'見事的中'であることを願っています。 -----:-----:-----:-----:-----:-----:-----:-----:-----:----- FUKUDA (episteme) Fumiki -- magical, but never a magic...