cpack(1)

Synopsis

cpack -G <generator> [<options>]

Description

The “cpack” executable is the CMake packaging program. CMake-generated build trees created for projects that use the INSTALL_* commands have packaging support. This program will generate the package.

CMake is a cross-platform build system generator. Projects specify their build process with platform-independent CMake listfiles included in each directory of a source tree with the name CMakeLists.txt. Users build a project by using CMake to generate a build system for a native tool on their platform.

Options

-G <generator>

Use the specified generator to generate package.

CPack may support multiple native packaging systems on certain platforms. A generator is responsible for generating input files for particular system and invoking that systems. Possible generator names are specified in the Generators section.

-C <Configuration>

Specify the project configuration

This option specifies the configuration that the project was build with, for example ‘Debug’, ‘Release’.

-D <var>=<value>

Set a CPack variable.

Set a variable that can be used by the generator.

--config <config file>

Specify the config file.

Specify the config file to use to create the package. By default CPackConfig.cmake in the current directory will be used.

--verbose,-V

enable verbose output

Run cpack with verbose output.

--debug

enable debug output (for CPack developers)

Run cpack with debug output (for CPack developers).

--trace

Put underlying cmake scripts in trace mode.

--trace-expand

Put underlying cmake scripts in expanded trace mode.

-P <package name>

override/define CPACK_PACKAGE_NAME

If the package name is not specified on cpack command line thenCPack.cmake defines it as CMAKE_PROJECT_NAME

-R <package version>

override/define CPACK_PACKAGE_VERSION

If version is not specified on cpack command line thenCPack.cmake defines it from CPACK_PACKAGE_VERSION_[MAJOR|MINOR|PATCH]look into CPack.cmake for detail

-B <package directory>

override/define CPACK_PACKAGE_DIRECTORY

The directory where CPack will be doing its packaging work.The resulting package will be found there. Inside this directoryCPack creates ‘_CPack_Packages’ sub-directory which is theCPack temporary directory.

--vendor <vendor name>

override/define CPACK_PACKAGE_VENDOR

If vendor is not specified on cpack command line (or inside CMakeLists.txt) thenCPack.cmake defines it with a default value

--help,-help,-usage,-h,-H,/?

Print usage information and exit.

Usage describes the basic command line interface and its options.

--version,-version,/V [<f>]

Show program name/version banner and exit.

If a file is specified, the version is written into it. The help is printed to a named <f>ile if given.

--help-full [<f>]

Print all help manuals and exit.

All manuals are printed in a human-readable text format. The help is printed to a named <f>ile if given.

--help-manual <man> [<f>]

Print one help manual and exit.

The specified manual is printed in a human-readable text format. The help is printed to a named <f>ile if given.

--help-manual-list [<f>]

List help manuals available and exit.

The list contains all manuals for which help may be obtained by using the --help-manual option followed by a manual name. The help is printed to a named <f>ile if given.

--help-command <cmd> [<f>]

Print help for one command and exit.

The cmake-commands(7) manual entry for <cmd> is printed in a human-readable text format. The help is printed to a named <f>ile if given.

--help-command-list [<f>]

List commands with help available and exit.

The list contains all commands for which help may be obtained by using the --help-command option followed by a command name. The help is printed to a named <f>ile if given.

--help-commands [<f>]

Print cmake-commands manual and exit.

The cmake-commands(7) manual is printed in a human-readable text format. The help is printed to a named <f>ile if given.

--help-module <mod> [<f>]

Print help for one module and exit.

The cmake-modules(7) manual entry for <mod> is printed in a human-readable text format. The help is printed to a named <f>ile if given.

--help-module-list [<f>]

List modules with help available and exit.

The list contains all modules for which help may be obtained by using the --help-module option followed by a module name. The help is printed to a named <f>ile if given.

--help-modules [<f>]

Print cmake-modules manual and exit.

The cmake-modules(7) manual is printed in a human-readable text format. The help is printed to a named <f>ile if given.

--help-policy <cmp> [<f>]

Print help for one policy and exit.

The cmake-policies(7) manual entry for <cmp> is printed in a human-readable text format. The help is printed to a named <f>ile if given.

--help-policy-list [<f>]

List policies with help available and exit.

The list contains all policies for which help may be obtained by using the --help-policy option followed by a policy name. The help is printed to a named <f>ile if given.

--help-policies [<f>]

Print cmake-policies manual and exit.

The cmake-policies(7) manual is printed in a human-readable text format. The help is printed to a named <f>ile if given.

--help-property <prop> [<f>]

Print help for one property and exit.

The cmake-properties(7) manual entries for <prop> are printed in a human-readable text format. The help is printed to a named <f>ile if given.

--help-property-list [<f>]

List properties with help available and exit.

The list contains all properties for which help may be obtained by using the --help-property option followed by a property name. The help is printed to a named <f>ile if given.

--help-properties [<f>]

Print cmake-properties manual and exit.

The cmake-properties(7) manual is printed in a human-readable text format. The help is printed to a named <f>ile if given.

--help-variable <var> [<f>]

Print help for one variable and exit.

The cmake-variables(7) manual entry for <var> is printed in a human-readable text format. The help is printed to a named <f>ile if given.

--help-variable-list [<f>]

List variables with help available and exit.

The list contains all variables for which help may be obtained by using the --help-variable option followed by a variable name. The help is printed to a named <f>ile if given.

--help-variables [<f>]

Print cmake-variables manual and exit.

The cmake-variables(7) manual is printed in a human-readable text format. The help is printed to a named <f>ile if given.

See Also

The following resources are available to get help using CMake:

Home Page

https://cmake.org

The primary starting point for learning about CMake.

Frequently Asked Questions

https://cmake.org/Wiki/CMake_FAQ

A Wiki is provided containing answers to frequently asked questions.

Online Documentation

https://cmake.org/documentation

Links to available documentation may be found on this web page.

Mailing List

https://cmake.org/mailing-lists

For help and discussion about using cmake, a mailing list is provided at cmake@cmake.org. The list is member-post-only but one may sign up on the CMake web page. Please first read the full documentation at https://cmake.org before posting questions to the list.