[openrtm-users 02275] Re: Building RTC:stage

Geoffrey Biggs geoffrey.biggs → aist.go.jp
2011ヵ 10畸 17ゥ (畸) 10:36:13 JST


Hi Matthieu,

The directory should exist after running CMake, and after make is run 
once it should contain the generated files. The command to generate them 
is putting them there:

/usr/bin/omniidl -bcxx -Wba -nf -I/usr/include/rtm/idl 
-C/localdisk/mboussar/rtcstage/build/include/rtcstage/idl/ 
/localdisk/mboussar/rtcstage/idl/stage_services.idl

What is odd is that one of the include directives in the compile command 
is different from what it should be:

/usr/lib/ccache/c++ -Drtcstage_EXPORTS -D_LARGEFILE_SOURCE 
-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D_REENTRANT 
-fPIC -I/localdisk/mboussar/rtcstage/include 
-I/localdisk/mboussar/rtcstage/build -I/usr/local/include/Stage-4.0 
-I/usr/include/rtm/idl [...] -c 
/localdisk/mboussar/rtcstage/src/rtcstage.cpp

The include directive:

-I/localdisk/mboussar/rtcstage/build

should be:

-I/localdisk/mboussar/rtcstage/build/include

This is probably the problem, but I'm not yet sure why it's coming out 
this way. Can you check the file src/CMakeLists.txt and confirm that 
line 12 looks like this:

include_directories(${PROJECT_BINARY_DIR}/include)

Geoff

On 17/10/11 10:22, Matthieu BOUSSARD wrote:
> Hi Geoffrey,
>
> actually I don't have that directory. here's the list of the files in :
> /localdisk/mboussar/rtcstage/include/rtcstage
>
> actuator_proxy.h camera_proxy.h CMakeLists.txt fiducial_proxy.h
> gripper_proxy.h laser_proxy.h model_proxy.h position_proxy.h
> ranger_proxy.h rtcstage.h
>
>
> The stage_services.idl can be found in /localdisk/mboussar/rtcstage/idl
> CMakeLists.txt stage_services.idl
>
> but not .hh or .cc have been generated
>
>
> $ make clean
> $ VERBOSE=1 make
>
> /usr/local/bin/cmake -H/localdisk/mboussar/rtcstage
> -B/localdisk/mboussar/rtcstage/build --check-build-system
> CMakeFiles/Makefile.cmake 0
> /usr/local/bin/cmake -E cmake_progress_start
> /localdisk/mboussar/rtcstage/build/CMakeFiles
> /localdisk/mboussar/rtcstage/build/CMakeFiles/progress.marks
> make -f CMakeFiles/Makefile2 all
> make[1]: entrant dans le répertoire « /localdisk/mboussar/rtcstage/build »
> make -f idl/CMakeFiles/stage_services_TGT.dir/build.make
> idl/CMakeFiles/stage_services_TGT.dir/depend
> make[2]: entrant dans le répertoire « /localdisk/mboussar/rtcstage/build »
> cd /localdisk/mboussar/rtcstage/build && /usr/local/bin/cmake -E
> cmake_depends "Unix Makefiles" /localdisk/mboussar/rtcstage
> /localdisk/mboussar/rtcstage/idl /localdisk/mboussar/rtcstage/build
> /localdisk/mboussar/rtcstage/build/idl
> /localdisk/mboussar/rtcstage/build/idl/CMakeFiles/stage_services_TGT.dir/DependInfo.cmake
> --color=
> make[2]: quittant le répertoire « /localdisk/mboussar/rtcstage/build »
> make -f idl/CMakeFiles/stage_services_TGT.dir/build.make
> idl/CMakeFiles/stage_services_TGT.dir/build
> make[2]: entrant dans le répertoire « /localdisk/mboussar/rtcstage/build »
> /usr/local/bin/cmake -E cmake_progress_report
> /localdisk/mboussar/rtcstage/build/CMakeFiles
> [ 0%] Compiling /localdisk/mboussar/rtcstage/idl/stage_services.idl for
> CORBA
> cd /localdisk/mboussar/rtcstage/idl && /usr/bin/omniidl -bcxx -Wba -nf
> -I/usr/include/rtm/idl
> -C/localdisk/mboussar/rtcstage/build/include/rtcstage/idl/
> /localdisk/mboussar/rtcstage/idl/stage_services.idl
> make[2]: quittant le répertoire « /localdisk/mboussar/rtcstage/build »
> /usr/local/bin/cmake -E cmake_progress_report
> /localdisk/mboussar/rtcstage/build/CMakeFiles 11
> [ 9%] Built target stage_services_TGT
> make -f idl/CMakeFiles/ALL_IDL_TARGET.dir/build.make
> idl/CMakeFiles/ALL_IDL_TARGET.dir/depend
> make[2]: entrant dans le répertoire « /localdisk/mboussar/rtcstage/build »
> cd /localdisk/mboussar/rtcstage/build && /usr/local/bin/cmake -E
> cmake_depends "Unix Makefiles" /localdisk/mboussar/rtcstage
> /localdisk/mboussar/rtcstage/idl /localdisk/mboussar/rtcstage/build
> /localdisk/mboussar/rtcstage/build/idl
> /localdisk/mboussar/rtcstage/build/idl/CMakeFiles/ALL_IDL_TARGET.dir/DependInfo.cmake
> --color=
> make[2]: quittant le répertoire « /localdisk/mboussar/rtcstage/build »
> make -f idl/CMakeFiles/ALL_IDL_TARGET.dir/build.make
> idl/CMakeFiles/ALL_IDL_TARGET.dir/build
> make[2]: entrant dans le répertoire « /localdisk/mboussar/rtcstage/build »
> make[2]: Rien à faire pour « idl/CMakeFiles/ALL_IDL_TARGET.dir/build ».
> make[2]: quittant le répertoire « /localdisk/mboussar/rtcstage/build »
> /usr/local/bin/cmake -E cmake_progress_report
> /localdisk/mboussar/rtcstage/build/CMakeFiles
> [ 9%] Built target ALL_IDL_TARGET
> make -f src/CMakeFiles/rtcstage.dir/build.make
> src/CMakeFiles/rtcstage.dir/depend
> make[2]: entrant dans le répertoire « /localdisk/mboussar/rtcstage/build »
> cd /localdisk/mboussar/rtcstage/build && /usr/local/bin/cmake -E
> cmake_depends "Unix Makefiles" /localdisk/mboussar/rtcstage
> /localdisk/mboussar/rtcstage/src /localdisk/mboussar/rtcstage/build
> /localdisk/mboussar/rtcstage/build/src
> /localdisk/mboussar/rtcstage/build/src/CMakeFiles/rtcstage.dir/DependInfo.cmake
> --color=
> make[2]: quittant le répertoire « /localdisk/mboussar/rtcstage/build »
> make -f src/CMakeFiles/rtcstage.dir/build.make
> src/CMakeFiles/rtcstage.dir/build
> make[2]: entrant dans le répertoire « /localdisk/mboussar/rtcstage/build »
> /usr/local/bin/cmake -E cmake_progress_report
> /localdisk/mboussar/rtcstage/build/CMakeFiles 1
> [ 18%] Building CXX object src/CMakeFiles/rtcstage.dir/rtcstage.cpp.o
> cd /localdisk/mboussar/rtcstage/build/src && /usr/lib/ccache/c++
> -Drtcstage_EXPORTS -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
> -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D_REENTRANT -fPIC
> -I/localdisk/mboussar/rtcstage/include
> -I/localdisk/mboussar/rtcstage/build -I/usr/local/include/Stage-4.0
> -I/usr/include/rtm/idl -Wall -fPIC -pipe -Wp,-D_FORTIFY_SOURCE=2
> -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32
> -march=i386 -mtune=generic -fasynchronous-unwind-tables -O2 -Wall -fPIC
> -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic
> -fasynchronous-unwind-tables -O2 -o
> CMakeFiles/rtcstage.dir/rtcstage.cpp.o -c
> /localdisk/mboussar/rtcstage/src/rtcstage.cpp
> Dans le fichier inclus 哈 partir de
> /localdisk/mboussar/rtcstage/include/rtcstage/rtcstage.h:33,
> 哈 partir de /localdisk/mboussar/rtcstage/src/rtcstage.cpp:30:
> /localdisk/mboussar/rtcstage/include/rtcstage/model_proxy.h:33:42:
> erreur: rtcstage/idl/stage_services.hh : Aucun fichier ou dossier de ce
> type
> In file included from
> /localdisk/mboussar/rtcstage/include/rtcstage/rtcstage.h:33,
> from /localdisk/mboussar/rtcstage/src/rtcstage.cpp:30:
> /localdisk/mboussar/rtcstage/include/rtcstage/model_proxy.h:49: erreur:
> expected class-name before ﹉,﹊ token
> /localdisk/mboussar/rtcstage/include/rtcstage/model_proxy.h:56: erreur:
> ﹉Geometry2D﹊ in namespace ﹉RTC﹊ does not name a type
> In file included from /localdisk/mboussar/rtcstage/src/rtcstage.cpp:30:
> /localdisk/mboussar/rtcstage/include/rtcstage/rtcstage.h:89: erreur: ISO
> C++ forbids declaration of ﹉ModelLaser﹊ with no type
> /localdisk/mboussar/rtcstage/include/rtcstage/rtcstage.h:89: erreur:
> invalid use of ﹉::﹊
> /localdisk/mboussar/rtcstage/include/rtcstage/rtcstage.h:89: erreur:
> expected ﹉;﹊ before ﹉*﹊ token
> In file included from /localdisk/mboussar/rtcstage/src/rtcstage.cpp:34:
> /localdisk/mboussar/rtcstage/include/rtcstage/gripper_proxy.h:44:
> erreur: expected class-name before ﹉,﹊ token
> In file included from /localdisk/mboussar/rtcstage/src/rtcstage.cpp:35:
> /localdisk/mboussar/rtcstage/include/rtcstage/laser_proxy.h:56: erreur:
> ISO C++ forbids declaration of ﹉ModelLaser﹊ with no type
> /localdisk/mboussar/rtcstage/include/rtcstage/laser_proxy.h:56: erreur:
> invalid use of ﹉::﹊
> /localdisk/mboussar/rtcstage/include/rtcstage/laser_proxy.h:56: erreur:
> expected ﹉;﹊ before ﹉*﹊ token
> In file included from /localdisk/mboussar/rtcstage/src/rtcstage.cpp:36:
> /localdisk/mboussar/rtcstage/include/rtcstage/position_proxy.h:44:
> erreur: expected class-name before ﹉,﹊ token
> make[2]: *** [src/CMakeFiles/rtcstage.dir/rtcstage.cpp.o] Erreur 1
> make[2]: quittant le répertoire « /localdisk/mboussar/rtcstage/build »
> make[1]: *** [src/CMakeFiles/rtcstage.dir/all] Erreur 2
> make[1]: quittant le répertoire « /localdisk/mboussar/rtcstage/build »
> make: *** [all] Erreur 2
>
>
> Matthieu
>
> Geoffrey Biggs a 垮crit :
>> Hi Matthieu,
>>
>> That's certainly odd. It works fine on mine, which means there's some
>> subtle difference between our systems causing the problem.
>>
>> Can you please check what is in the directory "include/rtcstage/idl"
>> in your build directory? There should be three files:
>
>>
>> ~/src/rtcstage/build $ ls include/rtcstage/idl/
>> stage_services.hh stage_servicesDynSK.cc stage_servicesSK.cc
>>
>> Can you also please try running this command and sending the output?
>> $ VERBOSE=1 make
>>
>> Geoff
>>
>> On 17/10/11 09:46, Matthieu BOUSSARD wrote:
>>> Hi Geoffrey,
>>>
>>> Here's the result of the Cmake on a clone from git :
>>>
>>> -- The C compiler identification is GNU
>>> -- The CXX compiler identification is GNU
>>> -- Check for working C compiler: /usr/lib/ccache/gcc
>>> -- Check for working C compiler: /usr/lib/ccache/gcc -- works
>>> -- Detecting C compiler ABI info
>>> -- Detecting C compiler ABI info - done
>>> -- Check for working CXX compiler: /usr/lib/ccache/c++
>>> -- Check for working CXX compiler: /usr/lib/ccache/c++ -- works
>>> -- Detecting CXX compiler ABI info
>>> -- Detecting CXX compiler ABI info - done
>>> -- Found OpenRTM: /usr/include (Required is at least version "1")
>>> -- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
>>> -- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so -
>>> found
>>> -- Looking for gethostbyname
>>> -- Looking for gethostbyname - found
>>> -- Looking for connect
>>> -- Looking for connect - found
>>> -- Looking for remove
>>> -- Looking for remove - found
>>> -- Looking for shmat
>>> -- Looking for shmat - found
>>> -- Looking for IceConnectionNumber in ICE
>>> -- Looking for IceConnectionNumber in ICE - found
>>> -- Found X11: /usr/lib/libX11.so
>>> -- Found OpenGL: /usr/lib/libGL.so
>>> -- Found FLTK:
>>> /usr/lib/libfltk_images.so;/usr/lib/libfltk_forms.so;/usr/lib/libfltk_gl.so;/usr/lib/libGL.so;/usr/lib/libfltk.so
>>>
>>>
>>> -- Found Stage: /usr/local/include/Stage-4.0;/usr/include (Required is
>>> at least version "4")
>>> -- Configuring done
>>> -- Generating done
>>> -- Build files have been written to: /localdisk/mboussar/rtcstage/build
>>>
>>> and the result from the make
>>> Dans le fichier inclus 哈 partir de
>>> /localdisk/mboussar/rtcstage/include/rtcstage/rtcstage.h:33,
>>> 哈 partir de /localdisk/mboussar/rtcstage/src/rtcstage.cpp:30:
>>> /localdisk/mboussar/rtcstage/include/rtcstage/model_proxy.h:33:42:
>>> erreur: rtcstage/idl/stage_services.hh : Aucun fichier ou dossier de ce
>>> type
>>> In file included from
>>> /localdisk/mboussar/rtcstage/include/rtcstage/rtcstage.h:33,
>>> from /localdisk/mboussar/rtcstage/src/rtcstage.cpp:30:
>>> /localdisk/mboussar/rtcstage/include/rtcstage/model_proxy.h:49: erreur:
>>> expected class-name before ﹉,﹊ token
>>> /localdisk/mboussar/rtcstage/include/rtcstage/model_proxy.h:56: erreur:
>>> ﹉Geometry2D﹊ in namespace ﹉RTC﹊ does not name a type
>>> In file included from /localdisk/mboussar/rtcstage/src/rtcstage.cpp:30:
>>> /localdisk/mboussar/rtcstage/include/rtcstage/rtcstage.h:89: erreur: ISO
>>> C++ forbids declaration of ﹉ModelLaser﹊ with no type
>>> /localdisk/mboussar/rtcstage/include/rtcstage/rtcstage.h:89: erreur:
>>> invalid use of ﹉::﹊
>>> /localdisk/mboussar/rtcstage/include/rtcstage/rtcstage.h:89: erreur:
>>> expected ﹉;﹊ before ﹉*﹊ token
>>> In file included from /localdisk/mboussar/rtcstage/src/rtcstage.cpp:34:
>>> /localdisk/mboussar/rtcstage/include/rtcstage/gripper_proxy.h:44:
>>> erreur: expected class-name before ﹉,﹊ token
>>> In file included from /localdisk/mboussar/rtcstage/src/rtcstage.cpp:35:
>>> /localdisk/mboussar/rtcstage/include/rtcstage/laser_proxy.h:56: erreur:
>>> ISO C++ forbids declaration of ﹉ModelLaser﹊ with no type
>>> /localdisk/mboussar/rtcstage/include/rtcstage/laser_proxy.h:56: erreur:
>>> invalid use of ﹉::﹊
>>> /localdisk/mboussar/rtcstage/include/rtcstage/laser_proxy.h:56: erreur:
>>> expected ﹉;﹊ before ﹉*﹊ token
>>> In file included from /localdisk/mboussar/rtcstage/src/rtcstage.cpp:36:
>>> /localdisk/mboussar/rtcstage/include/rtcstage/position_proxy.h:44:
>>> erreur: expected class-name before ﹉,﹊ token
>>> make[2]: *** [src/CMakeFiles/rtcstage.dir/rtcstage.cpp.o] Erreur 1
>>> make[1]: *** [src/CMakeFiles/rtcstage.dir/all] Erreur 2
>>> make: *** [all] Erreur 2
>>>
>>>
>>> Matthieu
>>>
>>> Geoffrey Biggs a 垮crit :
>>>> Hi Matthieu,
>>>>
>>>> Did you clean out your build directory after updating from Github?
>>>> There were some pretty significant changes to the CMake files in the
>>>> update.
>>>>
>>>> If that doesn't make a difference, can you post the CMake output here?
>>>>
>>>> Geoff
>>>>
>>>> On 14/10/11 09:36, Matthieu BOUSSARD wrote:
>>>>> Hi Geoffrey,
>>>>>
>>>>> Thank you for the update, Actually I still have got some issues. Even
>>>>> the cmake commands ran perfectly, It looks like the
>>>>> stage_services.hh is
>>>>> not generated from stage_services.idl. If I generate it manually it's
>>>>> still not found by the makefile. Am I making a mistake in my include ?
>>>>>
>>>>>
>>>>> Matthieu
>>>>>
>>>>>
>>>>> Geoffrey Biggs a 垮crit :
>>>>>> Hi Matthieu,
>>>>>>
>>>>>> I've finished updating the component. I haven't had time to test
>>>>>> it yet
>>>>>> beyond confirming that it starts a simulation. You can get it from
>>>>>> the
>>>>>> github repository. Let me know if you have any more problems.
>>>>>>
>>>>>> Geoff
>>>>>>
>>>>>> On 13/10/11 09:25, Matthieu BOUSSARD wrote:
>>>>>>> Thank you very much, I'm looking forward to trying it. Will you
>>>>>>> post a
>>>>>>> message to confirm once the update finished ?
>>>>>>>
>>>>>>> Matthieu
>>>>>>>
>>>>>>> Geoffrey Biggs a ���crit :
>>>>>>>> It looks like the HEAD version of stage has progressed considerably
>>>>>>>> since the component was released. I will take a look at updating
>>>>>>>> the
>>>>>>>> component today. In the mean time, checking out the Stage source
>>>>>>>> from
>>>>>>>> about November last year should give you a version of Stage that
>>>>>>>> the
>>>>>>>> component will work with.
>>>>>>>>
>>>>>>>> Geoff
>>>>>>>>
>>>>>>>> On 11/10/11 18:20, Matthieu BOUSSARD wrote:
>>>>>>>>> Dear Sir,
>>>>>>>>>
>>>>>>>>> I'd like to build RTC::stage component but I'm facing the
>>>>>>>>> following
>>>>>>>>> issues :
>>>>>>>>>
>>>>>>>>> I couldn't find where is Stg::ModelLaser class defined, thus I
>>>>>>>>> got the
>>>>>>>>> following error :
>>>>>>>>> rtcstage-1.0.0/comp/rtcstage.h:60: erreur: ISO C++ forbids
>>>>>>>>> declaration
>>>>>>>>> of ��ModelLaser�� with no type
>>>>>>>>> rtcstage-1.0.0/comp/rtcstage.h:60: erreur: invalid use of ��::��
>>>>>>>>> rtcstage-1.0.0/comp/rtcstage.h:60: erreur: expected ��;�� before
>>>>>>>>> ��*�� token
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Also pose_rel, I believed should is defined in stage.hh , but was
>>>>>>>>> commented when I downloaded the sources thus the following error.
>>>>>>>>>
>>>>>>>>> rtcstage-1.0.0/proxies/fiducial_proxy.cpp:47: erreur: ��class
>>>>>>>>> Stg::ModelFiducial::Fiducial�� has no member named ��pose_rel��
>>>>>>>>>
>>>>>>>>> At the time I only made a directory, ran cmake , then make. I'm
>>>>>>>>> using
>>>>>>>>> the following programs :
>>>>>>>>>
>>>>>>>>> rtcstage-1.0.0
>>>>>>>>> rtv-Stage-508538b
>>>>>>>>> player-3.0.2
>>>>>>>>> openrtm 1.0.0
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thank you,
>>>>>>>>>
>>>>>>>>> Best regards,
>>>>>>>>>
>>>>>>>>> Matthieu Boussard
>>>>>>>>> _______________________________________________
>>>>>>>>> openrtm-users mailing list
>>>>>>>>> openrtm-users → openrtm.org
>>>>>>>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>>>>>>> _______________________________________________
>>>>>>>> openrtm-users mailing list
>>>>>>>> openrtm-users → openrtm.org
>>>>>>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> openrtm-users mailing list
>>>>>>> openrtm-users → openrtm.org
>>>>>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> openrtm-users mailing list
>>>>>>> openrtm-users → openrtm.org
>>>>>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>>>>> _______________________________________________
>>>>>> openrtm-users mailing list
>>>>>> openrtm-users → openrtm.org
>>>>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>>>>
>>>>> _______________________________________________
>>>>> openrtm-users mailing list
>>>>> openrtm-users → openrtm.org
>>>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>>> _______________________________________________
>>>> openrtm-users mailing list
>>>> openrtm-users → openrtm.org
>>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>>
>>> _______________________________________________
>>> openrtm-users mailing list
>>> openrtm-users → openrtm.org
>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>> _______________________________________________
>> openrtm-users mailing list
>> openrtm-users → openrtm.org
>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>
> _______________________________________________
> openrtm-users mailing list
> openrtm-users → openrtm.org
> http://www.openrtm.org/mailman/listinfo/openrtm-users


openrtm-users 丟□伉件弘伉旦玄及副ま