Я пытаюсь упростить сборку этого пакета ROS https://github.com/toddhester/rl-texplore-ros-pkg, но он не может создать 'rl_experiment' со следующей ошибкой:
/usr/bin/ld: cannot find -lagentlib
/usr/bin/ld: cannot find -lenvlib
collect2: error: ld returned 1 exit status
Я использую ROS Kinetic.Общие библиотеки существуют в папках /texplore/devel/.private/rl_env/lib/ и /texplore/devel/.private/rl_agent/lib/ с символическими ссылками в / texplore / devel / lib /
Iпробовал следующее:
(1) export / texplore / devel / lib / в LD_LIBRARY_PATH
(2) добавление символических ссылок в библиотеки в / texplore / src / rl_experiment / src
(3) добавление путей к библиотекам в target_link_libraries
target_link_libraries(experiment agentlib envlib ${catkin_LIBRARIES}
"/media/usr/texplore/devel/lib/libagentlib.so"
"/media/usr/texplore/devel/lib/libenvlib.so")
(4) установка пути поиска для компоновщика
SET(CMAKE_EXE_LINKER_FLAGS
"${CMAKE_EXE_LINKER_FLAGS} -Wl,-rpath -Wl,/media/usr/texplore/devel/lib/")
Не сработало.Наконец, я добавил символические ссылки в / usr / local / lib, и это сработало.Но мне не нужны символические ссылки в этой папке.
Так что компоновщик просто не ищет дерево компоновки.Мой вопрос: почему catkin не добавил путь компоновщика в catkin_LIBRARIES?Ранее я создавал пакеты ROS, но не могу понять, почему этот конкретный пакет не работает.