I don't know what the argument COMPONENT
of the install()
command means, and I don't understand the CMake documentation for this. What is it in more detail?
What would an example be?
CMake provides the install command to specify how a project is to be installed. This command is invoked by a project in the CMakeLists file and tells CMake how to generate installation scripts. The scripts are executed at install time to perform the actual installation of files.
The installation directory is usually left at its default, which is /usr/local . Installing software here ensures that it is automatically available to users. It is possible to specify a different installation directory by adding -DCMAKE_INSTALL_PREFIX=/path/to/install/dir to the CMake command line.
cmake contains the commands generated by install command from your CMakeLists. txt . You can execute it by cmake -P cmake_install. cmake and it performs the installation of your project even on windows.
You can group installation targets into components, for example, "docs", "libs", "runtime", etc.
add_library(libone libone.c) add_executable(one main1.c) install(TARGETS libone one DESTINATION /somedir COMPONENT comp_one) add_library(libtwo libtwo.c) add_executable(two main2.c) install(TARGETS libtwo two DESTINATION /somedir COMPONENT comp_two)
This makes it possible to run cmake -DCOMPONENT=comp_one -P {your_build_dir}/cmake_install.cmake
to install only the libone
library and the one
executable. When you issue make install
all components are installed.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With