[openrtm-users 00580] Re: FedoraCore4でRTCのビルドエラー
Ando Noriaki
n-ando @ aist.go.jp
2008年 8月 22日 (金) 19:47:58 JST
佐藤様
産総研の安藤と申します。
> 佐藤と申します、よろしくお願いします。
こちらこそよろしくお願いいたします。
> 今回縁あってOpenRTMをFedoraCore4に
> インストールしてRTCを作成しようと思っております。
>
> インストールは無事終了してサンプルバイナリの
> 実行も問題ないのですが、rtc-templateで生成した
> ソースコードのビルドでエラーとなっております。
>
> $ make -f Makefile.ConsoleIn
> g++ -o ConsoleInComp ConsoleIn.o ConsoleInComp.o `rtm-config --libs`
> ConsoleIn.o(.gnu.linkonce.d._ZTC9ConsoleIn516_N7POA_RTC23DataFlowComponentActionE[vtable
> for ConsoleIn]+0xec): undefined reference to `virtual thunk to
> PortableServer::ServantBase::_add_ref()'
> ConsoleIn.o(.gnu.linkonce.d._ZTC9ConsoleIn516_N7POA_RTC23DataFlowComponentActionE[vtable
> for ConsoleIn]+0xf0): undefined reference to `virtual thunk to
> PortableServer::ServantBase::_remove_ref()'
> ConsoleIn.o(.gnu.linkonce.d._ZTC9ConsoleIn516_N7POA_RTC23DataFlowComponentActionE[vtable
> for ConsoleIn]+0x138): undefined reference to
> `PortableServer::ServantBase::_refcount_value()'
>
> ・・・・・・・・・・・・・・・・・・・・・
>
> というようにomniORBのPortableServer::ServantBaseなどが
> 見つからないようです。
>
> インストールは、
> 「FedoraCore用」の「Fedora 一括インストール・スクリプト」
> で行いました。
> OpenRTMは、0.4.2がインストールされたようです。
> $ rpm -qa | grep OpenRTM
> OpenRTM-aist-example-0.4.2-0.fc4
> OpenRTM-aist-doc-0.4.2-0.fc4
> OpenRTM-aist-devel-0.4.2-0.fc4
> OpenRTM-aist-0.4.2-0.fc4
こちらでも、Fedora4でサンプルをrtc-templateで生成して試してみましたが、
同じ現象は再現されず、正常にコンパイルできました。
1. rtc-template の --helpで出てくるサンプル
(サービスポート無し)を生成しコンパイル
問題なし
2. pkg_install_fedora.sh -u ですべてアンインストール後
再度pkg_install_fedora.sh ですべてインストール
問題なし
3. rtm/config_rtc.h の RTC_CORBA_CXXMAPPING11 を
defineしてサンプルをコンパイル
問題なし
エラーメッセージからすると、OpenRTMとomniORBのバージョンがあっていない
様な気がします(omniORBが4.1系?
ただ、Fedora4のomniORBはyumでインストールすると4.0.7が入ったので、
バージョンが上がったということではないと思います。(上記2.で確認)
omniORBのバージョンはいくつでしょうか?
また、ご自分でomniORBまたは、OpenRTMをソースからビルドして
インストールされたことはありませんか?
--
安藤慶昭@独立行政法人産業技術総合研究所 研究員
知能システム研究部門 タスクインテリジェンス研究グループ
〒305-8568 茨城県つくば市梅園1-1-1 中央第2
TEL: 029-861-5981 FAX: 029-862-6631
n-ando @ aist.go.jp, n-ando @ ieee.org
openrtm-users メーリングリストの案内