[Documentation] [TitleIndex] [WordIndex

Montar Pacotes

Uma vez que toda as dependências de sistema em relação ao seu pacote foram instaladas, podemos gerar um novo pacote.

Note: Se você instalou o ROS usando apt ou outro gerenciador de pacote, você já deve ter todas as dependências necessárias.

Antes de continuarmos, lembre-se de inicializar seu arquivo de setup de ambiente, caso já não tenha feito. No Ubuntu o comando é o seguinte:

# source /opt/ros/%YOUR_ROS_DISTRO%/setup.bash
$ source /opt/ros/kinetic/setup.bash             # Para Kinetic por exemplo

Usando catkin_make

catkin_make é uma ferramenta de linha de comando que adciona utilidades ao fluxo de trabalho padrão do catkin. Pode-se imaginar que o catkin_make combina chamadas do cmake e make em um fluxo de trabalho CMake padrão.

Como usar:

# Em um catkin workspace
$ catkin_make [make_targets] [-DCMAKE_VARIABLES=...]

Para pessoas que não são familiar com o fluxo de trabalho padrão do CMake, ele é dividido da seguinte maneira:

Note: Se você executar os comandos abaixo, ele não funcionará, pois este é apenas um exemplo de como o CMake geralmente funciona.

# Em um projeto CMake
$ mkdir build
$ cd build
$ cmake ..
$ make
$ make install  # (opcionalmente)

Esse processo é executado para cada projeto CMake. Por outro lado, os projetos catkin podem ser montados juntos em um workspace. Montar (build) zero ou vários pacotes catkin em um workspace segue o fluxo de trabalho abaixo:

# Em um catkin workspace
$ catkin_make
$ catkin_make install  # (opcionalmente)

Os comandos acima irão montar qualquer projeto catkin encontrado na pasta src. Isto segue a recomendação definida pelo REP128. Se o seu código fonte está em um local diferente, por exemplo minha_src, então você chamaria catkin_make desta forma:

Note: Se você rodar os comandos abaixo, eles não irão funcionar, já que a pasta minha_src não existe.

# Em um catkin workspace
$ catkin_make --source minha_src
$ catkin_make install --source minha_src  # (opcionalmente)

Para usos mais avançados do catkin_make veja a seguinte documentação: catkin/commands/catkin_make

Montando seu pacote

Para os leitores desta página que estão prestes a criar seus próprios códigos, consulte também os próximos tutoriais (C++)/(Python) pois você pode precisar modificar o CMakeLists.txt.

Nesse momento você já deve ter um catkin workspace e um pacote catkin chamado beginner_tutorials criado no tutorial anterior Criando um pacote ROS. Entre no seu catkin workspace (se você ainda não estiver lá) e olhe a pasta src:

$ cd ~/catkin_ws/
$ ls src

Você deve notar que existe uma pasta chamada beginner_tutorials que você criou com o comando catkin_create_pkg no tutorial anterior. Agora, nós podemos montar (build) este pacote usando catkin_make:

$ catkin_make

Você deve ver um monte de saída do cmake e `make, que deve ser algo similar a isto:

Observe que catkin_make primeito mosta quais caminhos ele está usando para cada um dos espaços. Os espaços são descritos no REP128 e na documentação dobre catkin workspaces na wiki: catkin/workspaces. Uma coisa importante para observar é que por causa destes valores padrão, várias pastam foram criadas no seu catkin workspace. Dê uma olhada usando o comando ls:

$ ls

A pasta build é o local padrão do build space e é onde cmake e make são chamados para configurar e montar (buid) seus pacotes. A pasta devel é o local padrão do devel space, que é onde seus executáveis e bibliotecas vão antes da instalação dos seus pacotes.


2022-05-28 12:54