[ros-users] Setup guide of uvc_stereo in ros

Brian Gerkey gerkey at willowgarage.com
Tue Jan 11 16:36:25 UTC 2011


On Mon, Jan 10, 2011 at 9:34 AM, Ken Tossell <ktossell at umd.edu> wrote:
> [Question about linking for shared libraries*]

> [*] Does anyone know what could be causing this:
>
> ""
> make[3]: Entering directory
> `/opt/ros/cturtle/stacks/umd-ros-pkg/camera_umd/uvc_camera/build'
>  Linking CXX executable ../bin/camera_node
>  make[3]: Entering directory
> `/opt/ros/cturtle/stacks/umd-ros-pkg/camera_umd/uvc_camera/build'
>  Linking CXX shared library ../lib/libnodelet_uvc_camera.so
>  /usr/bin/ld: cannot find -lcamera_info_manager
>  collect2: ld returned 1 exit status
> ""
>
> ? Notice that camera_node builds fine even though it also uses
> libcamera_info_manager. The uvc_camera package depends on the
> camera_info_manager package, which has the following in its manifest:
>
>  20   <export>
>  21     <cpp cflags="-I${prefix}/include"
>  22          lflags="-Wl,-rpath,${prefix}/lib -L${prefix}/lib
> -lcamera_info_manager"/>
>  23   </export>
>
> It's as if the -l flag is getting passed to the nodelet build but the
> -L is not. I don't have this problem on my installations, though --
> either for c-turtle or for unstable.
>
> uvc_camera's CMakeLists.txt:
>
> ""
> rosbuild_add_library(nodelet_uvc_camera src/nodelets.cpp
> src/camera.cpp src/stereo.cpp src/uvc_cam.cpp)
>
> rosbuild_add_executable(camera_node src/camera_node.cpp src/camera.cpp
> src/uvc_cam.cpp)
> ""

Both link steps should get the same flags.  Can you run it again with
verbose output (e.g., roscd uvc_camera; make VERBOSE=1), so that we
can see the full link lines?

	brian.



More information about the ros-users mailing list