如何在ros ubuntu中更改包中库的目录

时间:2015-11-26 05:26:00

标签: c++ opencv ubuntu ros

我已经通过在家中解压缩opencv2.4.9.zip来安装opencv2.4.9(没有CUDA)。 许多成功的代码正在使用此库。 现在我想在另一个文件夹中重建opencv2.4.9(带CUDA)。 我不想删除之前的文件夹,因为我以后不想面对任何问题,让我的旧代码无法正常运行。

那么,问题是如何更改目录的名称?好像我们将包与CMake中的库链接如下:

  

include_directories($ {catkin_INCLUDE_DIRS} $ {OpenCV_INCLUDE_DIRS})

     

find_package(OpenCV REQUIRED)

     

find_package(catkin REQUIRED COMPONENTS cv_bridge image_transport   OpenCV roscpp rospy std_msgs)

目录的名称只是OpenCV。 因此,如果我在家中有多个OpenCV库,我怎么能单独链接它们呢?

如果我们可以更改名称,如何使c ++链接到库?

add_executable(xxx src/xxx.cpp)

target_link_libraries(xxx ${catkin_LIBRARIES} ${OpenCV_LIBRARIES})

1 个答案:

答案 0 :(得分:1)

可以包含库并与include_directories()link_directories()相关联,如下所示:

cmake_minimum_required(VERSION 2.4.6)
include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)
...
include_directories(${PROJECT_SOURCE_DIR})

include_directories(/path/to/opencv/OpenCV-2.4.1/include)
link_directories(/path/to/opencv/OpenCV-2.4.1/lib)
...

# Set the build type.  Options are:
#  Coverage       : w/ debug symbols, w/o op ...

所以你不应该忘记CMakeLists.txt中的链接,也许会删除与当前OpenCV库的标准链接。