[choreonoid-users-ja 00118] Re: (OSX10.9)unknown type name 'shared_ptr'

中岡 慎一郎 s.nakaoka @ aist.go.jp
2014年 2月 4日 (火) 10:42:49 JST


東様

産総研の中岡です。

shared_ptrはもともとboostで提供されていて、Choreonoidでもそれを前提に
コーディングしているのですが、C++の最新の規格(C++11?)では標準ライブラリ
(std)に取り込まれています。

.cpp内ではネームスペースを省略して書いているので、恐らくstd::shared_ptr
とboost::shared_ptrとで名前が衝突してしまっているのだと思います。

C++コンパイラのオプションで恐らくC++11にしないモードがあるかと思うので、
そちらを使えばコンパイルできるかもしれません。

いずれにしてもC++11に対応出来ていないのはChoreonoidの不備ですので、今後
対応させるべく修正していこうと思います。

ご指摘ありがとうございました。


(02/04/14 01:08), 東俊光 wrote:
> coreonoid-users-jaメーリングリスト各位,
> 
> 初めまして.東と申します.
> 
> 個人的な興味で大変恐縮なのですが,choreonoidの開発環境を
> 当方のPC(macbook.OSX10.9.1)にインストール,ビルドし
> ようと試みたのですが,ビルド時に掲題のメッセージが出て,
> ビルドできませんでした.
> 
> ビルド時の対象ファイル及びメッセージは下記のようになって
> いました.
> 
> [  9%] Building CXX object src/Util/CMakeFiles/CnoidUtil.dir/VRMLParser.cpp.o
> /Users/east/programming/choreonoid-1.4.0/src/Util/VRMLParser.cpp:374:9: error: 
>       unknown type name 'shared_ptr'
>         shared_ptr<EasyScanner> topScanner;
>         ^
> /Users/east/programming/choreonoid-1.4.0/src/Util/VRMLParser.cpp:374:19: error: 
>       expected member name or ';' after declaration specifiers
>         shared_ptr<EasyScanner> topScanner;
>         ~~~~~~~~~~^
> /Users/east/programming/choreonoid-1.4.0/src/Util/VRMLParser.cpp:380:33: error: 
>       reference to 'shared_ptr' is ambiguous
>         typedef map<VRMLProto*, shared_ptr<EasyScanner> > ProtoToEntityS...
> 
> 〜〜似たようなエラーメッセージがこの後,計14件表示されました〜〜
> 
> 上記メッセージから,boostのインストールに失敗したのだろうか
> と考え,再度boostのインストールを行い,簡単なサンプルプログ
> ラムをXcodeで作成,boostの取り込みが出来るか確認しましたが,
> これはうまく行っている様でした.
> 
> boostのバージョンは1.55となっていました.
> 
> 以前のメーリングリストの保管庫を拝読すると「1.50以降は対応
> していない」旨の記載を見つけたのですが,これは今でも有効な
> のでしょうか.
> 
> お手数をおかけしてい恐縮ですが,ご教示頂けますと幸いです.
> 
> 以上,宜しくお願いします.
> 
> P.S.
> 実は,他に2件ばかりよく分からないことがあるのです.
> まずは上記質問をさせて頂きます.
> 
> 東.
> ------------------------------------------------
> 東  俊光
> thigashi @ me.com
> ------------------------------------------------
> 
> 
> 
> 
> _______________________________________________
> choreonoid-users-ja mailing list
> choreonoid-users-ja @ choreonoid.org
> https://choreonoid.org/mailman/listinfo/choreonoid-users-ja
> 

-- 
中岡 慎一郎 <s.nakaoka @ aist.go.jp>
産業技術総合研究所 知能システム研究部門
ヒューマノイド研究グループ
Phone: 029-861-5161  Fax: 029-862-6519


choreonoid-users-ja メーリングリストの案内