Building image_view fails on osx
Has anyone succeeded in building image_view on osx?
For me it fails due to:
==> Processing catkin package: 'image_view'
==> Building with env: '/Users/tatsch/ros_catkin_ws/install_isolated/env.sh'
Makefile exists, skipping explicit cmake invocation...
==> make cmake_check_build_system in '/Users/tatsch/ros_catkin_ws/build_isolated/image_view'
==> make -j4 in '/Users/tatsch/ros_catkin_ws/build_isolated/image_view'
Linking CXX executable /Users/tatsch/ros_catkin_ws/devel_isolated/image_view/lib/image_view/image_saver
Linking CXX executable /Users/tatsch/ros_catkin_ws/devel_isolated/image_view/lib/image_view/disparity_view
Linking CXX executable /Users/tatsch/ros_catkin_ws/devel_isolated/image_view/lib/image_view/extract_images
[ 12%] Built target disparity_view
[ 25%] Built target image_saver
[ 37%] Built target extract_images
Linking CXX executable /Users/tatsch/ros_catkin_ws/devel_isolated/image_view/lib/image_view/image_view
[ 50%] Built target image_view_exe
Scanning dependencies of target image_view
Scanning dependencies of target stereo_view
[ 62%] [ 75%] Building CXX object CMakeFiles/image_view.dir/src/nodelets/image_nodelet.cpp.o
Building CXX object CMakeFiles/image_view.dir/src/nodelets/disparity_nodelet.cpp.o
[ 87%] Building CXX object CMakeFiles/stereo_view.dir/src/nodes/stereo_view.cpp.o
Linking CXX shared library /Users/tatsch/ros_catkin_ws/devel_isolated/image_view/lib/libimage_view.dylib
Undefined symbols for architecture x86_64:
"_g_signal_connect_data", referenced from:
image_view::ImageNodelet::onInit() in image_nodelet.cpp.o
image_view::DisparityNodelet::onInit() in disparity_nodelet.cpp.o
"_g_type_check_instance_cast", referenced from:
image_view::ImageNodelet::onInit() in image_nodelet.cpp.o
image_view::DisparityNodelet::onInit() in disparity_nodelet.cpp.o
"_gtk_widget_get_type", referenced from:
image_view::ImageNodelet::onInit() in image_nodelet.cpp.o
image_view::DisparityNodelet::onInit() in disparity_nodelet.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [/Users/tatsch/ros_catkin_ws/devel_isolated/image_view/lib/libimage_view.dylib] Error 1
make[1]: *** [CMakeFiles/image_view.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Linking CXX executable /Users/tatsch/ros_catkin_ws/devel_isolated/image_view/lib/image_view/stereo_view
Undefined symbols for architecture x86_64:
"_g_signal_connect_data", referenced from:
StereoView::StereoView(std::string const&) in stereo_view.cpp.o
"_g_type_check_instance_cast", referenced from:
StereoView::StereoView(std::string const&) in stereo_view.cpp.o
"_gtk_widget_get_type", referenced from:
StereoView::StereoView(std::string const&) in stereo_view.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [/Users/tatsch/ros_catkin_ws/devel_isolated/image_view/lib/image_view/stereo_view] Error 1
make[1]: *** [CMakeFiles/stereo_view.dir/all] Error 2
make: *** [all] Error 2
brew list yields:
assimp freetype libtiff pkg-config sqlite
atk gdbm libtool poco tbb
autoconf gdk-pixbuf libusb postgresql texi2html
automake gettext libyaml pyqt tinyxml
boost gfortran libzzip pyqwt uuid
cairo glib log4cxx pyside vtk
cmake gmp mpfr python x264
collada-dom gtest mysql python3 xvid
cppunit gtk+ nmap qhull xz
doxygen jasper ogre qt yaml-cpp
eigen jpeg opencv qwt yaml-cpp-0.3
faac lame ossp-uuid readline yasm
ffmpeg libffi pango ruby
fontconfig libmpc pcre shiboken
freeimage libpng pixman sip
How can i find out where cmake actually looks for the gtk+ library and fix this?
Better question, why is it using gtk+ at all...
What version of image_view are you using (also Mac version, ROS distro, and the output of
brew list
)Looks like this might be a regression: https://github.com/ros-perception/image_pipeline/commit/02f8306e310bb8a85d1d7ad4d91c3e7e5ce47608