#8827 closed Bugs (worksforme)
libboost_regex missing link to libicuuc in openSUSE
Reported by: | Owned by: | John Maddock | |
---|---|---|---|
Milestone: | To Be Determined | Component: | regex |
Version: | Boost 1.53.0 | Severity: | Problem |
Keywords: | opensuse ROS | Cc: |
Description
I am running openSUSE 12.3, which installs with Boost v1.49 and just used YaST to update Boost to v1.53 along with a number of associated libraries. But when I go to install ROS, which uses libboost_regex, I get a series of errors that all look like the following:
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/libboost_regex-mt.so: undefined reference to `u_tolower_51'
After talking with someone on the Boost IRC channel who was very helpful, I was able to use readelf to look at the Version needs section of libboost_regex.so.1.53.0 and determine that libicuuc.so is not linked, which provides those missing references. I wish that I could offer a fix, but I'm way out of my depth here. If someone could please fix this linking issue and let me know how to do so on my system, I would greatly appreciate it. Thanks very much.
Change History (3)
comment:1 by , 9 years ago
comment:2 by , 9 years ago
Resolution: | → worksforme |
---|---|
Status: | new → closed |
comment:3 by , 9 years ago
Thanks very much for looking into it. I'll pass it along to the openSUSE community.
I just built regex on Ubuntu and the ICU libraries are definitely linked in there. I suspect that whoever packaged the binaries for that platform messed up - especially as it worked for 1.49, and I don't recall any significant changes to our build scripts. Suggest you file a bug report with Suse - sorry to pass the buck :-(
Possible workarounds would be to: