Создание пакета

Любой написанный и запущенный код в рамках ROS должен принадлежать конкретному пакету.

Команды ниже создадут тестовый пакет test_package. При этом мы укажем что пакет имеет зависимости от пакетов (std_msgs rospy roscpp actionlib_msgs message_generation message_runtime). И наш пакет уже будет настроен для работы с этими пакетами.

Если далее нам станет необходимо добавить новые зависимости, то необходимо в "ручную" редактировать файл package.xml добавляя нужные поля.

$ cd ~/catkin_ws/src
$ catkin_create_pkg test_package std_msgs rospy roscpp actionlib_msgs message_generation message_runtime

После создания пакета, мы увидим директорию test_package в которой будет находиться файлы.

$ cd test_package
$ ls

include        
→ Директория для Header файло языка Сr

src

→ Директори исходных кодов
CMakeLists.txt → Файл конфигурации системы сборки

package.xml    → Файл конфигурации пакета

Файл package.xml содержит информацию о пакете: название, автора, лицензию, список зависимостей от других пакетов ROS.

<?xml version="1.0"?>
<package format="2">
  <name>test_package</name>
  <version>0.0.0</version>
  <description>The test_package package</description>

  <maintainer email="cola@todo.todo">cola</maintainer>
  <license>TODO</license>
  <!-- <url type="website">http://wiki.ros.org/test_package</url> -->
  <!-- <author email="jane.doe@example.com">Jane Doe</author> -->

  <buildtool_depend>catkin</buildtool_depend>
  <build_depend>actionlib_msgs</build_depend>
  <build_depend>message_generation</build_depend>
  <build_depend>roscpp</build_depend>
  <build_depend>rospy</build_depend>
  <build_depend>std_msgs</build_depend>
  <build_export_depend>actionlib_msgs</build_export_depend>
  <build_export_depend>roscpp</build_export_depend>
  <build_export_depend>rospy</build_export_depend>
  <build_export_depend>std_msgs</build_export_depend>
  <exec_depend>actionlib_msgs</exec_depend>
  <exec_depend>message_runtime</exec_depend>
  <exec_depend>roscpp</exec_depend>
  <exec_depend>rospy</exec_depend>
  <exec_depend>std_msgs</exec_depend>


  <!-- The export tag contains other, unspecified, tags -->
  <export>
    <!-- Other tools can request additional information be placed here -->

  </export>
</package>

Второй обязательный файл для пакета это файл CMakeLists.txt Этот файл содержит инструкции для Catkin (системы сборки пакетов, которая использует Сmake). В этом файле содержатся инструкции на создание исполнительных файлов, очередность сборки проекта, создание символьных ссылок и тп. Откройте и посмотрите на содержание файла.

results matching ""

    No results matching ""