Как заставить мой пакет ros не использовать некоторые предоставляемые ROS библиотеки?

Допустим, я создал пакет Рос my_package это зависит от библиотеки (или пакета)ext_package версия 1. я уже установил ext_package как автономный на моей машине и все работало нормально до сих пор …

Теперь я создал еще один new_package но нужно использовать ext_package предоставлено ros для чтения данных из темы; нужно использовать мост. Однако ROS только обеспечивает ext_package V2, который не совместим с V1. Получаю сборник вопросов.

Так что мне пришлось бы полностью переписать my_package для размещения V2 …. что было бы удивительно утомительно.

Таким образом, вопрос: как редактировать CMake файл такой, что my_package использует автономный ext_package расположен в ~/PathToLib/ext_package/build?

Я уже пробовал что-то вроде,

unset(EXT_PACKAGE_CONFIG_PATH CACHE)
unset(EXT_PACKAGE_DIR CACHE)

message(STATUS  "...initial CMAKE_PREFIX_PATH:")
message(STATUS ${CMAKE_PREFIX_PATH})

set(TMP_PREFIX_PATH ${CMAKE_PREFIX_PATH})
set(CMAKE_PREFIX_PATH "/home/${usrname}/soft/lib/ext_package/build/installed")

message(STATUS  "... corrected CMAKE_PREFIX_PATH")
message(STATUS ${CMAKE_PREFIX_PATH})

SET (EXT_PACKAGE_ROOT "/home/${usrname}/soft/lib/ext_package/build/installed")
SET (EXT_PACKAGE_INCLUDE_DIRS "/home/${usrname}/soft/lib/ext_package/build/installed/include")
SET (EXT_PACKAGE_LIBRARY_DIR "/home/${usrname}/soft/lib/ext_package/build/installed/lib")
find_package(ext_package REQUIRED)

… но без успеха. Любая идея, пожалуйста?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …