project(pkg2)
find_package(catkin REQUIRED COMPONENTS
roscpp
std_msgs
geometry_msgs
pkg1 //依赖pkg1
)
catkin_package(
INCLUDE_DIRS include //将pkg2也就是当前包的include目录抛出去
LIBRARIES pkg2 //将pkg2也就是当前包的src目录抛出去
CATKIN_DEPENDS pkg1 //将pkg1抛出去
# DEPENDS system_lib
)
上述情况:
pkg2 编译依赖 pkg1,所以在find_pakgage添加pkg1则可以编译(package.xml 做相应添加)。
如果有个pkg3 依赖pkg2,如果catkin_package都注释掉的话,则会编译失败,按照上面catkin_package的注释做对应的修改。保证编译通过。