包含来自同一ROS工作区的不同程序包的头文件的问题

时间:2019-04-10 10:38:32

标签: ros dji-sdk catkin

我正在尝试将ROS dji_sdk与ROSPlan链接。我从github下载了2个软件包,并放在了相同的工作区中。我在rosplan包中创建了一个.cpp文件,我想包含dji_sdk和dji_sdk_demos中的标头,所以我在cpp文件中编写了

    #include "dji_sdk/dji_sdk.h"
    #include "dji_sdk_demo/demo_flight_control.h"

但是我遇到了构建错误:

    dji_sdk/dji_sdk.h: File o directory non esistente

我编辑了rosplan软件包的CMakeLists.txt,并添加了以下几行:

    find_package(dji_sdk REQUIRED)
    find_package(dji_sdk_demo REQUIRED)
    ...

    include_directories(${dji_sdk_INCLUDE_DIRS})
    include_directories(${dji_sdk_demo_INCLUDE_DIRS})

并在.xml文件中添加build_depend,但是在构建过程中还会发生另一个错误:

    dji_sdk_demo/demo_flight_control.h: File o directory non esistente

编辑:

如果我尝试删除

   #include "dji_sdk_demo/demo_flight_control.h"

从我的cpp文件中,我得到了

    undefined reference for DJI::OSDK::VERSION:FW

0 个答案:

没有答案