I am trying to install ROS Fuerte on Mac OS X mountain lion (10.8.1) as per the guide. When I make ros-underlay/build I get this error. I tried to revert to boost 1.49.0 instead since some have had success with this, but it did not help.
Anyone got an idea how to solve this issue?
[ 3%] Built target std_msgs_gencpp
[ 6%] Built target std_msgs_genlisp
[ 10%] Built target std_msgs_genpy
[ 11%] Built target rospack
[ 11%] Built target rospackexe
[ 11%] Built target rosstackexe
[ 11%] Built target roslib
[ 11%] Built target cpp_common
Linking CXX shared library ../../lib/librostime.dylib
Undefined symbols for architecture x86_64:
"boost::system::system_category()", referenced from:
___cxx_global_var_init3 in time.cpp.o
boost::thread_exception::thread_exception(int, char const*) in time.cpp.o
"boost::system::generic_category()", referenced from:
___cxx_global_var_init1 in time.cpp.o
___cxx_global_var_init2 in time.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]: *** [lib/librostime.dylib] Error 1
make[1]: *** [roscpp_core/rostime/CMakeFiles/rostime.dir/all] Error 2
make: *** [all] Error 2
Edit: So I got past this error by adding Williams pull request for rostime/CMakeLists.txt
find_package(Boost REQUIRED COMPONENTS date_time thread system)
Had to also install libtool, autoconf and automake, which was not mentioned in the guide. However, now I get a new error when doing brew install log4cxx
configure.in:338: the top level
configure.in:40: error: version mismatch. This is Automake 1.12.3,
configure.in:40: but the definition used by this AM_INIT_AUTOMAKE
configure.in:40: comes from Automake 1.9.6. You should recreate
configure.in:40: aclocal.m4 with aclocal and run automake again.
Edit2: brew --config returns
HOMEBREW_VERSION: 0.9.3
HEAD: f53ef3529c14f5848d7c51c6896ecdc4ba0750d7
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CELLAR: /usr/local/Cellar
CPU: dual-core 64-bit penryn
OS X: 10.8.1-x86_64
Xcode: 4.4.1
CLT: 4.4.0.0.1.1249367152
LLVM-GCC: build 2336
Clang: 4.0 build 421
System Ruby: 1.8.7-358
Perl: /usr/bin/perl
Python: /usr/bin/python
Ruby: /usr/bin/ruby => /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
Edit3: Wow got it working, except for a small error when doing rosdep install -a in the guide. Other than that, I can now run roscore etc. Will update later when I get a better overview of what I did to get it to work.
Originally posted by tropic on ROS Answers with karma: 84 on 2012-09-10
Post score: 3
Original comments
Comment by Lorenz on 2012-09-10:
Please add appropriate tags to your question to make sure the right people who might be able to help get notified.
Comment by tropic on 2012-09-12:
Updated to reflect my progress. I got past the boost error by adding Williams pull request. Also, I updated boost to 1.50.0 with no issues.
Comment by WilliamWoodall on 2012-09-12:
The log4cxx error looks brew specific. Have you checked the issue tracker for Homebrew on github.com to see if it has been reported? I am testing the log4cxx install on my machine right now.
Comment by WilliamWoodall on 2012-09-12:
log4cxx builds successfully on my machine. I do not have autoconf/automake/libtool installed and my xcode/clt version is 4.4.1
Comment by tropic on 2012-09-13:
I do not see any open issues for log4cxx on the homebrew issue tracker. What version do you have installed? I also have xcode 4.4.1.
Comment by tropic on 2012-09-13:
I removed autoconf/automake/libtool again with brew and now I get this again
./autogen.sh: line 23: glibtoolize: command not found
./autogen.sh: line 27: aclocal: command not found
./autogen.sh: line 28: autoconf: command not found
./autogen.sh: line 29: automake: command not found
Comment by WilliamWoodall on 2012-09-13:
What is the output of brew doctor
? This might be something you need to raise on the Homebrew issue tracker. Make sure you review https://github.com/mxcl/homebrew/wiki/Bug-Fixing-Checklist before submitting a ticket to them.