把持動作計画モジュール GraspPlannerComp のコンパイル方法について、以下に記す。
環境整備
ここでは、graspPlugin のインストールとビルド まですでに完了しているとする。
ビルド
GraspPlanner 本体のソースのあるディレクトリに移動し、make する。
% cd ~/workspace
% cd Choreonoid/extplugin/graspPlugin/GraspConsumer/GraspPlan20100623/
% make
おおむね以下のようなプロセスでビルドが実行される。
`rtm-config --idlc` `rtm-config --idlflags` -I`rtm-config --prefix`/include/rtm/idl GraspController.idl
rtm-skelwrapper --include-dir="" --skel-suffix=Skel --stub-suffix=Stub --idl-file=GraspController.idl
GraspControllerSkel.h was generated.
GraspControllerSkel.cpp was generated.
GraspControllerStub.h was generated.
GraspControllerStub.cpp was generated.
rm -f GraspPlanner.o
g++ `rtm-config --cflags` -I. -c -o GraspPlanner.o GraspPlanner.cpp
rm -f GraspPlanningImpl.o
g++ `rtm-config --cflags` -I. -c -o GraspPlanningImpl.o GraspPlanningImpl.cpp
rm -f GraspControllerSkel.o
g++ `rtm-config --cflags` -I. -c -o GraspControllerSkel.o GraspControllerSkel.cpp
rm -f GraspControllerSVC_impl.o
g++ `rtm-config --cflags` -I. -c -o GraspControllerSVC_impl.o GraspControllerSVC_impl.cpp
rm -f GraspPlanner.so
g++ -shared -o GraspPlanner.so GraspPlanningImpl.o GraspPlanner.o GraspControllerSkel.o GraspControllerSVC_impl.o `rtm-config --libs` -L/usr/lib -L/usr/local/lib
rm -f GraspPlannerComp.o
g++ `rtm-config --cflags` -I. -c -o GraspPlannerComp.o GraspPlannerComp.cpp
g++ -o GraspPlannerComp GraspPlanningImpl.o GraspPlanner.o GraspControllerSkel.o GraspControllerSVC_impl.o GraspPlannerComp.o `rtm-config --libs` -L/usr/lib -L/usr/local/lib
最終成果物である、GraspPlannerComp を実行できれば、成功。
% ./GraspPlannerComp
実行メッセージは特に出ない。