Boost 1.54/libicu 51.2 conflict with pluginlib?
I am trying to get ROS and the MoveIt package installed on openSUSE 12.3, and currently my problem seems to be related to a conflict with some of the dependencies, which cannot be resolved automatically with rosdep on openSUSE. This is my most recent error message:
==> Processing catkin package: 'pluginlib'
==> Building with env: '/opt/ros/groovy/env.sh'
Makefile exists, skipping explicit cmake invocation...
==> make cmake_check_build_system in '/home/abouchard/ros_catkin_ws/build_isolated/pluginlib'
==> make -j2 -l2 in '/home/abouchard/ros_catkin_ws/build_isolated/pluginlib'
Linking CXX executable /home/abouchard/ros_catkin_ws/devel_isolated/pluginlib/lib/pluginlib/plugin_tool
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/libboost_regex-mt.so: undefined reference to `u_tolower_51'
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/libboost_regex-mt.so: undefined reference to `u_isblank_51'
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/libboost_regex-mt.so: undefined reference to `u_charType_51'
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/libboost_regex-mt.so: undefined reference to `u_charFromName_51'
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/libboost_regex-mt.so: undefined reference to `icu_51::Locale::Locale(icu_51::Locale const&)'
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/libboost_regex-mt.so: undefined reference to `u_isspace_51'
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/libboost_regex-mt.so: undefined reference to `icu_51::Locale::Locale()'
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/libboost_regex-mt.so: undefined reference to `icu_51::Locale::~Locale()'
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/libboost_regex-mt.so: undefined reference to `icu_51::Collator::createInstance(icu_51::Locale const&, UErrorCode&)'
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/libboost_regex-mt.so: undefined reference to `u_digit_51'
collect2: error: ld returned 1 exit status
make[2]: *** [/home/abouchard/ros_catkin_ws/devel_isolated/pluginlib/lib/pluginlib/plugin_tool] Error 1
make[1]: *** [CMakeFiles/plugin_tool.dir/all] Error 2
make: *** [all] Error 2
Traceback (most recent call last):
File "./src/catkin/bin/../python/catkin/builder.py", line 722, in build_workspace_isolated
number=index + 1, of=len(ordered_packages)
File "./src/catkin/bin/../python/catkin/builder.py", line 497, in build_package
install, force_cmake, quiet, last_env, cmake_args, make_args + catkin_make_args
File "./src/catkin/bin/../python/catkin/builder.py", line 353, in build_catkin_package
run_command(make_cmd, build_dir, quiet)
File "./src/catkin/bin/../python/catkin/builder.py", line 198, in run_command
raise subprocess.CalledProcessError(proc.returncode, ' '.join(cmd))
CalledProcessError: Command '/opt/ros/groovy/env.sh make -j2 -l2' returned non-zero exit status 2
<== Failed to process package 'pluginlib':
Command '/opt/ros/groovy/env.sh make -j2 -l2' returned non-zero exit status 2
Reproduce this error by running:
==> /opt/ros/groovy/env.sh make -j2 -l2
Command failed, exiting.
This is the result of the following command, which successfully built the catkin environment previously, but I am rebuilding after updating Boost from v1.49 to v1.54.
sudo ./src/catkin/bin/catkin_make_isolated --install-space /opt/ros/groovy --install -DSETUPTOOLS_DEB_LAYOUT=OFF
Searching for this issue on Google is not very instructive, but the undefined reference errors all appear to be related to the icu package, and ought to be provided by libicuuc. However, in /usr/lib64 I have
lrwxrwxrwx 1 root root 14 Jul 15 13:03 libicuuc.so -> libicuuc.so.51
lrwxrwxrwx 1 root root 16 Jul 15 07:56 libicuuc.so.49 -> libicuuc ...