[ros-users] can't install electric from source [solved]

Tom Temple tom.temple at vecna.com
Fri Sep 2 17:55:58 UTC 2011


Thank you for the help, but I think the problem was with my gcc.

I was able to build from source by rolling back my version of libstdc++6 from 
4.6 to 4.4 (which is the version in lucid).

On 09/01/2011 03:20 PM, Ken Conley wrote:
> On Thu, Sep 1, 2011 at 11:47 AM, Tom Temple<tom.temple at vecna.com>  wrote:
>> Of course, sorry.
>> This is on Ubuntu 10.04 kernel 2.6.32-30-generic.  I'm using lucid sources with apt.
>>
>> I'm trying to install from source as described on the wiki,
>> http://www.ros.org/wiki/electric/Installation/Ubuntu/Source
>> i.e.,
>> rosinstall /other/ros
>> "http://packages.ros.org/cgi-bin/gen_rosinstall.py?rosdistro=electric&variant=desktop-full&overlay=no"
>> (today: Sept 1 2011)
>>
>> More details about the apt installation: I did this first before trying to build
>> from source.  I had linker errors when building my own nodes.  If I removed the
>> NOBUILD file from laser_geometry, it would not build either.  I purged this
>> installation before issuing the rosinstall command above.
>
> I'd rather debug your apt installation than try to debug the source
> errors -- some of the actions you describe of modifying read-only
> binary installs and mixing in source builds can put your tree into a
> weird state.
>
> For example, I would expect your laser_geometry build to fail because
> the apt method of installation creates a binary install as root that
> isn't meant to be re-installed (i.e. you shouldn't remove a NOBUILD
> file there).  Also, if you installed via apt-get, there is no need to
> rebuild laser_geometry as it is already built.
>
> Basically, my advice is to please do an apt installation and send the
> linker errors from your nodes.   This way we can address the issue of
> compiling your nodes.
>
> NOTE: if your own nodes use eigen or tinyxml, you will have to update
> them per these guides:
> http://www.ros.org/wiki/eigen
> http://www.ros.org/wiki/tinyxml
>
> Also, if you have issues linking eigen, please include the output of:
> pkg-config  --cflags eigen3
>
>   - Ken
>
>> Let me know if there's any other information you'd find helpful.  I'll also
>> append the complete make output of which I only sent (what I considered to be)
>> the interesting part.
>>
>> /other/ros/ros/tools/rospack>VERBOSE=1 make
>> mkdir -p bin
>> Re-run cmake no build system arguments
>> -- Configuring done
>> -- Generating done
>> -- Build files have been written to: /other/ros/ros/tools/rospack/build
>> cd build&&  make
>> make[1]: Entering directory `/other/ros/ros/tools/rospack/build'
>> /usr/bin/cmake -H/other/ros/ros/tools/rospack
>> -B/other/ros/ros/tools/rospack/build --check-build-system
>> CMakeFiles/Makefile.cmake 0
>> /usr/bin/cmake -E cmake_progress_start
>> /other/ros/ros/tools/rospack/build/CMakeFiles
>> /other/ros/ros/tools/rospack/build/CMakeFiles/progress.marks
>> make -f CMakeFiles/Makefile2 all
>> make[2]: Entering directory `/other/ros/ros/tools/rospack/build'
>> make -f CMakeFiles/rospack.dir/build.make CMakeFiles/rospack.dir/depend
>> make[3]: Entering directory `/other/ros/ros/tools/rospack/build'
>> cd /other/ros/ros/tools/rospack/build&&  /usr/bin/cmake -E cmake_depends "Unix
>> Makefiles" /other/ros/ros/tools/rospack /other/ros/ros/tools/rospack
>> /other/ros/ros/tools/rospack/build /other/ros/ros/tools/rospack/build
>> /other/ros/ros/tools/rospack/build/CMakeFiles/rospack.dir/DependInfo.cmake --color=
>> make[3]: Leaving directory `/other/ros/ros/tools/rospack/build'
>> make -f CMakeFiles/rospack.dir/build.make CMakeFiles/rospack.dir/build
>> make[3]: Entering directory `/other/ros/ros/tools/rospack/build'
>> Linking CXX shared library ../lib/librospack.so
>> /usr/bin/cmake -E cmake_link_script CMakeFiles/rospack.dir/link.txt --verbose=1
>>
>>
>> /usr/bin/c++  -fPIC -O3 -DNDEBUG  -shared -Wl,-soname,librospack.so -o
>> ../lib/librospack.so CMakeFiles/rospack.dir/rospack.o
>> CMakeFiles/rospack.dir/tinyxml-2.5.3/tinystr.o
>> CMakeFiles/rospack.dir/tinyxml-2.5.3/tinyxml.o
>> CMakeFiles/rospack.dir/tinyxml-2.5.3/tinyxmlparser.o
>> CMakeFiles/rospack.dir/tinyxml-2.5.3/tinyxmlerror.o
>> /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/4.4.3/libstdc++.a(functexcept.o):
>> relocation R_X86_64_32 against `std::bad_typeid::~bad_typeid()' can not be used
>> when making a shared object; recompile with -fPIC
>> /usr/lib/gcc/x86_64-linux-gnu/4.4.3/libstdc++.a: could not read symbols: Bad value
>> collect2: ld returned 1 exit status
>> make[3]: *** [../lib/librospack.so] Error 1
>> make[3]: Leaving directory `/other/ros/ros/tools/rospack/build'
>> make[2]: *** [CMakeFiles/rospack.dir/all] Error 2
>> make[2]: Leaving directory `/other/ros/ros/tools/rospack/build'
>> make[1]: *** [all] Error 2
>> make[1]: Leaving directory `/other/ros/ros/tools/rospack/build'
>> make: *** [all] Error 2
>>
>> On 09/01/2011 02:24 PM, Ken Conley wrote:
>>> Hi Tom,
>>>
>>> Please include much more information about your system:
>>>
>>> http://www.ros.org/wiki/Support#Guidelines_for_asking_a_question_.28Please_read_before_posting.29
>>>
>>> e.g. your OS version, how you installed ROS (e.g. /opt/ros/ros doesn't
>>> make much sense to me, nor does the fact that you mention apt-get but
>>> then talk about building rospack).
>>>
>>> thanks,
>>> Ken
>>>
>>> On Thu, Sep 1, 2011 at 11:00 AM, Tom Temple<tom.temple at vecna.com>    wrote:
>>>> rosinstall fails with "rospack failed to build"
>>>>
>>>> Issuing VERBOSE=1 make against rospack directly it looks like it can't link to
>>>> tinyxml. (output below)
>>>>
>>>> I had libtinyxml-dev and libtinyxml-2.6.2 installed via apt-get.  I purged them
>>>> and tried rosinstall again and got the same error.
>>>>
>>>> Potential clue: I was able to install electric-desktop-full with apt-get
>>>> successfully, but I would get similar errors with rosmake, e.g., when making
>>>> laser_geometry I was getting an error related to linking to eigen.  This
>>>> suggests to me that I'm not installing the system dependencies in a ros friendly
>>>> way.
>>>>
>>>> I'm basically stumped and would really appreciate any suggestions for what to try.
>>>>
>>>> Thanks!
>>>>
>>>> make output follows.
>>>>
>>>> wolverine at x-mansion:/opt/ros/ros/tools/rospack>VERBOSE=1 make
>>>> ...
>>>> Linking CXX shared library ../lib/librospack.so
>>>> /usr/bin/cmake -E cmake_link_script CMakeFiles/rospack.dir/link.txt --verbose=1
>>>>
>>>>
>>>> /usr/bin/c++  -fPIC -O3 -DNDEBUG  -shared -Wl,-soname,librospack.so -o
>>>> ../lib/librospack.so CMakeFiles/rospack.dir/rospack.o
>>>> CMakeFiles/rospack.dir/tinyxml-2.5.3/tinystr.o
>>>> CMakeFiles/rospack.dir/tinyxml-2.5.3/tinyxml.o
>>>> CMakeFiles/rospack.dir/tinyxml-2.5.3/tinyxmlparser.o
>>>> CMakeFiles/rospack.dir/tinyxml-2.5.3/tinyxmlerror.o
>>>> /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/4.4.3/libstdc++.a(functexcept.o):
>>>> relocation R_X86_64_32 against `std::bad_typeid::~bad_typeid()' can not be used
>>>> when making a shared object; recompile with -fPIC
>>>> /usr/lib/gcc/x86_64-linux-gnu/4.4.3/libstdc++.a: could not read symbols: Bad value
>>>> collect2: ld returned 1 exit status
>>>> ...
>>>>
>>
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>>
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users
>




More information about the ros-users mailing list