ROS Kinetic 'catkin_make' завершается ошибкой, поскольку для PROJECT_NAME установлено значение Project - PullRequest
0 голосов
/ 09 июля 2019

Я уже некоторое время использую ROS Kinetic, и сегодня, когда я перешел на создание нового рабочего пространства catkin после страницы с учебниками ROS (http://wiki.ros.org/catkin/Tutorials/create_a_workspace), я получаю сообщение об ошибке CMake о том, что для PROJECT_NAME установлено значение Project, которое недопустим. Я никогда не сталкивался с этой проблемой ни с одним из созданных мною других рабочих мест.

Я не хочу связываться с toplevel.cmake из-за страха испортить мои другие рабочие места.

Есть идеи, почему это происходит?

CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkin_package.cmake:91 (message):
  catkin_package() PROJECT_NAME is set to 'Project', which is not a valid
  project name.  You must call project() before calling catkin_package().

Спасибо.

1 Ответ

0 голосов
/ 09 июля 2019

Мне удалось воспроизвести вышеуказанную ошибку, которую вы получаете. Для этого я открыл CMakeLists.txt и прокомментировал вторую строку, которая определяет имя пакета, т.е. project(package_name). После этого я попытался собрать свой пакет через catkin_make, но получил ошибку ниже (см. Ошибку в желтом поле):

enter image description here

Затем я попытался собрать тот же пакет после раскомментирования вышеупомянутой строки. На этот раз я смог успешно собрать свой пакет (в моем случае, тест) без каких-либо ошибок.

enter image description here

Файл

CMakeLists.txt содержит project(), а также catkin_package(), и первая функция должна вызываться до catkin_package() внутри файла. Итак, project(package_name) отсутствует в вашем файле CMakeLists.txt или прокомментирован.

Если он отсутствует, то добавьте его вручную. Если он есть, но прокомментирован, раскомментируйте его.

Подробнее о правильном формате файла CMakeLists.txt из здесь .

...