[openrtm-users 02944] 【OpenRTM C++】【OSX Maveriks】Maveriksでのビルドについて

1 つの投稿 / 0 new
ysuga
オフライン
Last seen: 1年 8ヶ月 前
登録日: 2011-05-23 10:14
[openrtm-users 02944] 【OpenRTM C++】【OSX Maveriks】Maveriksでのビルドについて

OpenRTM MLの皆様:
菅です.お世話になります.

OpenRTM-aist C++版をOSX Maveriksで使っています.
以下の3つの点で,ビルドが上手くいきません.

1.configure.ac
OSXでのデフォルトのgcc (Xcode)では,--export-dynamicではなく,-export-dynamicです.

2.exampleのConfigSample
VectorConert.hで定義しているoperator>>ですが,
この関数がグローバルスコープにあると上手くビルドできません.

http://clang.llvm.org/compatibility.html#dep_lookup

ここでは,operator>>をstdネームスペースに追加して回避しました.

3.SimpleIOについて
InPortを使う場合に問題が起きました.
Typecode.hにおいて,operator<<=を使っている126行目でコンパイルエラーが起きます.
問題は上記の2と同じ理由です.
CORBA::Anyに対して,TimedLong型を代入する部分ですが,
このoperator<<=はidlコンパイラによって生成されるコードなので,
この問題に対しては,rtm/Manager.hより先にrtm/idl/BasicDataType.hをインクルードするという方法で回避できます.

ただし,この方法だと,RTC Builder側のコードを変更する必要が出てきます.
他のOSでは試していません.

一応,patchを作りました.以下のようにリビジョン2400にパッチを当ててください.

$ svn co -r 2400
http://svn.openrtm.org/OpenRTM-aist/trunk/OpenRTM-aist/
OpenRTM-aist-trunk
$ patch -p1 -d OpenRTM-aist-trunk < openrtm_ysuga_20131111-1.patch

お気づきの点があれば,どなたでもお教えください.
他に良い方法はありましたでしょうか?

ではでは

--
///////////////////////////////////////////////////////////////////
// Yuki Suga, Ph.D.
// URL: http://www.ysuga.net/?lang=en
// E-mail: ysuga@ysuga.net
///////////////////////////////////////////////////////////////////

未定義

ダウンロード

最新バージョン : 2.0.1-RELESE

統計

Webサイト統計
ユーザ数:2195
プロジェクト統計
RTコンポーネント307
RTミドルウエア35
ツール22
文書・仕様書2

Choreonoid

モーションエディタ/シミュレータ

OpenHRP3

動力学シミュレータ

OpenRTP

統合開発プラットフォーム

産総研RTC集

産総研が提供するRTC集

TORK

東京オープンソースロボティクス協会

DAQ-Middleware

ネットワーク分散環境でデータ収集用ソフトウェアを容易に構築するためのソフトウェア・フレームワーク