cmake と cpack を使用して、Windows でいくつかのプログラムのインストーラーを作成したいと考えています。インストールするプログラムを選択できるようにしたいのですが、選択したプログラムがショートカットとしてスタート メニューに表示されます。これは簡単な試みです。プログラムごとに 1 つのコンポーネントを作成しましたが、スタート メニュー変数を生成する方法がわかりません。インストールするように選択されていない場合でも、すべてのプログラムが常にメニューに表示されるようになりました。まず、インストールする簡単なプログラムです。
#include <iostream>
#include <conio.h>
int main()
{
std::cout << "prog1" << std::endl;
_getch();
return 0;
}
ここに CMakeLists.txt ファイルがあります
cmake_minimum_required( VERSION 2.8 )
project ( CompoTest )
add_executable(prog1 prog1.cpp)
add_executable(prog2 prog2.cpp)
add_executable(prog3 prog3.cpp)
install(TARGETS prog1
RUNTIME DESTINATION bin
COMPONENT compo1)
install(TARGETS prog2
RUNTIME DESTINATION bin
COMPONENT compo2)
install(TARGETS prog3
RUNTIME DESTINATION bin
COMPONENT compo3)
set ( CPACK_PACKAGE_VERSION "1.0.0" )
set(CPACK_PACKAGE_EXECUTABLES
prog1 "prog 1"
prog2 "prog 2"
prog3 "prog 3"
)
set ( CPACK_COMPONENTS_ALL compo1 compo2 compo3 )
include (CPack)
問題は、インストールで選択されたプログラムに応じてスタート メニューのショートカットを生成することです。簡単だと思っていましたが、そうではないようです。これを行うことは可能ですか?
更新: http://www.cmake.org/Wiki/CMake:Component_Install_With_CPackのどの例でもスタート メニューのショートカットが生成されていないことがわかりました。