catkin-tools

http://catkin-tools.readthedocs.io/en/latest/cheat_sheet.html

一.Initializing Workspaces初始化工作空间

初始化具有默认布局的工作区(src/build/devel)在当前目录中:

        catkin init
        catkin init --workspace .
        catkin config --init
        mkdir src && catkin build

在不同目录中具有默认布局:

        catkin init --workspace /tmp/path/to/my_catkin_ws

显式扩展另一个工作区:

        catkin config --init --extend /opt/ros/indigo

初始化具有源空间other_src的工作空间:

        catkin config --init --source-space other_src

or a workspace with build, devel, and install space ending with the suffix _alternate:

        catkin config --init --space-suffix _alternate

二.Configuring Workspaces配置工作空间

查看当前配置:

        catkin config

设置和复位CMake选项:

        catkin config --cmake-args -DENABLE_CORBA=ON -DCORBA_IMPLEMENTATION=OMNIORB
        catkin config --no-cmake-args

将安装切换到指定的安装空间:

        catkin config --install

三.Building Packages编译包

[1]Build all the packages:

        catkin build

...one at a time, with additional debug output[一次一个,额外的调试输出]:

        catkin build -p 1

...迫使CMake重新配置每一个:

        catkin build --force-cmake

[2]Build a specific package and its dependencies:

        catkin build my_package

... or ignore its dependencies:

        catkin build my_package --no-deps

[3]Build packages包含当前的工作目录:

        catkin build --this

... but don’t rebuild its dependencies:

        catkin build --this --no-deps

[4]Build packages有额外的CMake参数:

        catkin build --cmake-args -DCMAKE_BUILD_TYPE=Debug

... and save them to be used for the next build:

        catkin build --save-config --cmake-args -DCMAKE_BUILD_TYPE=Debug

Build all packages 在给定目录中:

        catkin build $(catkin list -u /path/to/folder)

... or in the current folder:

        catkin build $(catkin list -u .)

四.Cleaning Build Products

清理 the build, devel, and install spaces (if they exist):

        catkin clean

... or just the build space:

        catkin clean --build

... or just clean a single package:

        catkin clean PKGNAME

... or just delete the build directories(生成目录) for packages which have been disabled or removed:

        catkin clean --orphans

五.Create Packages

快速创建workspace中的catkin packages:

Creates catkin workspace resources like packages:

        catkin create pkg

六.Environment Utility

 It can be used to both print the current environment variables and run a command in a modified (修改的)environment.It is primarily used in the build stage command reproduction.

Run an arbitrary command in a modified environment:

catkin env [-h] [-i] [-s]
           [NAME=VALUE [NAME=VALUE ...]] [COMMAND] [ARG [ARG ...]]

七.List Package Info

 It is used to find and list information about catkin packages. By default(默认情况下), it will list the packages in the workspace containing the current working directory. It can also be used to list the packages in any other arbitrary directory.

Lists catkin packages in the workspace or other arbitray folders:
catkin list [-h] [--workspace WORKSPACE] [--profile PROFILE]
            [--deps | --rdeps] [--depends-on [PKG [PKG ...]]]
            [--rdepends-on [PKG [PKG ...]]] [--this] [--quiet]
            [--unformatted]

八.Locate Directories定位路径

 It can be used to locate important locations in the workspace such as the active source, build, devel, and install spaces, and package directories in the workspace.

Get the paths to various locations in a workspace:
catkin locate [-h] [--workspace WORKSPACE] [--profile PROFILE] [-e]
              [-r] [-q] [-s | -b | -d | -i] [--shell-verbs]
              [--examples]
              [PACKAGE]

九.Manage Profiles

创建所有应用程序服务器运行时环境。该命令创建概要文件,即定义 Deployment Manager、定制概要文件或独立应用程序服务器的运行时环境的文件集合。

It has several sub-commands for profile management.有多个子命令用于配置文件管理

Manage config profiles for a catkin workspace:

catkin profile [-h] [--workspace WORKSPACE]
                      {list,set,add,rename,remove} ...

sub-command help:
    list                List the available profiles.
    set                 Set the active profile by name.
    add                 Add a new profile by name.
    rename              Rename a given profile.
    remove              Remove a profile by name.

十.Controlling Color Display控制彩色显示

Disable colors when building in a shell that doesn’t support it (like IDEs):

        catkin --no-color build

... or enable it for shells that don’t know they support it:

        catkin --force-color build

十一.Profile Cookbook

Create “Debug” and “Release” profiles and then build them in independent build and devel spaces:

catkin config --profile debug -x _debug --cmake-args -DCMAKE_BUILD_TYPE=Debug
catkin config --profile release -x _release --cmake-args -DCMAKE_BUILD_TYPE=Release
catkin build --profile debug
catkin build --profile release
快速从头开始建立一个包Quickly build a package from scratch to make sure all of its dependencies are satisfied, then clean it:
catkin config --profile my_pkg -x _my_pkg_test
catkin build --profile my_pkg my_pkg
catkin clean --profile my_pkg --all

十二.Manipulating Workspace Chaining操纵空间链接

Change from implicit to explicit chaining[从隐性到显性链接:]:

catkin clean
catkin config --extend /opt/ros/indigo

Change from explicit to implicit chaining:

catkin clean
catkin config --no-extend

十三.Building With Other Job Servers

Build with distcc:

CC="distcc gcc" CXX="distcc g++" catkin build -p$(distcc -j) -j$(distcc -j) --no-jobserver

 总结:

catkin init – Initialize a Workspace初始化

catkin config – Configure a Workspace配置

catkin build – Build Packages编译

catkin clean – Clean Build Products

catkin create – Create Packages

catkin env – Environment Utility

catkin list – List Package Info

catkin locate – Locate Directories

catkin profile – Manage Profiles

 

原文地址:https://www.cnblogs.com/Jessica-jie/p/6707372.html