jsk-ros-pkg / jsk_common

common programs for jsk-ros-pkg
43 stars 81 forks source link

ubuntu 12.04, 64bitでcr_capture, stereo_synchronizerがmakeできない #31

Closed k-okada closed 10 years ago

k-okada commented 10 years ago

This post was originally posted at http://sourceforge.net/p/jsk-ros-pkg/tickets/33

ubuntu 12.04, 64bitでcr_capture, stereo_synchronizerがmakeできません。

エラーはいかのようで、

leus@equuleus:~/ros/fuerte/jsk-ros-pkg/cr_capture$ make Linking CXX executable ../bin/cr_capture /usr/bin/ld: CMakeFiles/cr_capture.dir/src/cr_node.o: undefined reference to symbol 'boost::signals::connection::~connection()' /usr/bin/ld: note: 'boost::signals::connection::~connection()' is defined in DSO /usr/lib/libboost_signals.so.1.46.1 so try adding it to the linker command line /usr/lib/libboost_signals.so.1.46.1: could not read symbols: Invalid operation collect2: ld はステータス 1 で終了しました make[3]: [../bin/cr_capture] エラー 1 make[3]: ディレクトリ `/home/leus/ros/fuerte/jsk-ros-pkg/cr_capture/build' から出ます make[2]: [CMakeFiles/cr_capture.dir/all] エラー 2 make[2]: ディレクトリ /home/leus/ros/fuerte/jsk-ros-pkg/cr_capture/build' から出ます make[1]: *** [all] エラー 2 make[1]: ディレクトリ/home/leus/ros/fuerte/jsk-ros-pkg/cr_capture/build' から出ます make: *** [all] エラー 2

leus@equuleus:~/ros/fuerte/jsk-ros-pkg/stereo_synchronizer$ make [ 66%] Building CXX object CMakeFiles/cr_synchronizer.dir/src/cr_synchronizer.o Linking CXX executable ../bin/cr_synchronizer /usr/bin/ld: CMakeFiles/cr_synchronizer.dir/src/cr_synchronizer.o: undefined reference to symbol 'boost::signals::connection::~connection()' /usr/bin/ld: note: 'boost::signals::connection::~connection()' is defined in DSO /usr/lib/libboost_signals.so.1.46.1 so try adding it to the linker command line /usr/lib/libboost_signals.so.1.46.1: could not read symbols: Invalid operation collect2: ld はステータス 1 で終了しました make[3]: [../bin/cr_synchronizer] エラー 1 make[3]: ディレクトリ `/home/leus/ros/fuerte/jsk-ros-pkg/stereo_synchronizer/build' から出ます make[2]: [CMakeFiles/cr_synchronizer.dir/all] エラー 2 make[2]: ディレクトリ /home/leus/ros/fuerte/jsk-ros-pkg/stereo_synchronizer/build' から出ます make[1]: *** [all] エラー 2 make[1]: ディレクトリ/home/leus/ros/fuerte/jsk-ros-pkg/stereo_synchronizer/build' から出ます make: *** [all] エラー 2

boostのリンクの問題で次のようにするとmakeがとおるようなのですが、 これで問題ないでしょうか

leus@equuleus:~/ros/fuerte/jsk-ros-pkg/cr_capture$ Index: CMakeLists.txt

--- CMakeLists.txt (リビジョン 3911) +++ CMakeLists.txt (作業コピー) @@ -31,5 +31,7 @@ gencfg()

rosbuild_add_executable(cr_capture src/cr_node.cpp src/CRLib.cpp src/SRCalibratedLib.cpp) +rosbuild_link_boost(cr_capture signals) rosbuild_add_executable(cr_capture_sync src/cr_node_sync.cpp src/CRLib.cpp src/SRCalibratedLib.cpp) +rosbuild_link_boost(cr_capture_sync signals) v #target_link_libraries(example ${PROJECT_NAME})

leus@equuleus:~/ros/fuerte/jsk-ros-pkg/stereo_synchronizer$ svn diff

Index: CMakeLists.txt

--- CMakeLists.txt (リビジョン 3911) +++ CMakeLists.txt (作業コピー) @@ -27,5 +27,7 @@

rosbuild_add_boost_directories()

rosbuild_link_boost(${PROJECT_NAME} thread)

rosbuild_add_executable(stereo_synchronizer src/stereo_synchronizer.cpp) +rosbuild_link_boost(stereo_synchronizer signals) rosbuild_add_executable(cr_synchronizer src/cr_synchronizer.cpp) +rosbuild_link_boost(cr_synchronizer signals)

target_link_libraries(example ${PROJECT_NAME})

k-okada commented 10 years ago
k-okada commented 10 years ago

r3924 で対応しました。

k-okada commented 10 years ago
k-okada commented 10 years ago

Ticket moved from /p/jsk-ros-pkg/bugs/26/

Can't be converted: