ubuntu 中使用 librealsense 的 C++ 构建错误

C++ build error using librealsense in ubuntu

我从源代码安装了 librealsense。它已成功安装和构建。

当我尝试 运行 示例项目 (rs-hello-realsense) 时,我发现了构建错误。

/usr/local/include/librealsense2/hpp/rs_types.hpp:90: undefined reference to `rs2_get_error_message'
/usr/local/include/librealsense2/hpp/rs_types.hpp:92: undefined reference to `rs2_get_failed_function'
/usr/local/include/librealsense2/hpp/rs_types.hpp:92: undefined reference to `rs2_get_failed_function'

不同类型的构建出现相同类型的错误。

CMakeFiles/rs-hello-realsense.dir/rs-hello-realsense.cpp.o: In function `rs2::error::error(rs2_error*)':
rs-hello-realsense.cpp:(.text._ZN3rs25errorC2EP9rs2_error[_ZN3rs25errorC5EP9rs2_error]+0x2e): undefined reference to `rs2_get_error_message'
rs-hello-realsense.cpp:(.text._ZN3rs25errorC2EP9rs2_error[_ZN3rs25errorC5EP9rs2_error]+0x73): undefined reference to `rs2_get_failed_function'

终于明白了。需要在 CMakeList.txt 中添加几行。 链接项目中的库。

find_package(realsense2 2.29.0)
target_link_libraries(rs-hello-realsense ${DEPENDENCIES} ${realsense2_LIBRARY})

target_link_libraries(${PROJECT_NAME} ${realsense2_LIBRARY})

除了 CMake 文件的所有其他属性将相同