Я был разочарован CMake-CPack в течение почти одной недели.
Плохая вещь в онлайн-документации CMake-CPack не документирует эту часть.
После поиска в Google я нашел следующие переменные:
CPACK_PACKAGING_PREFIX # NOT documented
CMAKE_INSTALL_PREFIX # Documented, but the behavior seems weird
CPACK_INSTALL_PREFIX # NOT documented
CPACK_PACKAGE_INSTALL_DIRECTORY # Documented, but this variable does NOT work as the online document described
CPACK_PACKAGING_INSTALL_PREFIX # NOT documented
Я пытаюсь сделать следующее: упакуйте пакет Debian с помощью fakeroot make package
, когда пакет установлен sudo dpkg -i MyProgramPackageName
, установите его в /usr/local
с помощью подкаталога MyProgramPackageName
. То есть все файлы должны быть установлены под /usr/local/MyProgramPackageName-V.1.2.3
.
Я пытался (CMake 2.8.3 и CMake 2.8.5) настраивать эти переменные. Я пробовал так много комбинаций, но не смог.
Единственный способ:
Set(CPACK_PACKAGING_INSTALL_PREFIX /usr/local/MyProgramPackageName-V.1.2.3)
Но эта переменная НЕ документирована, и поведение не может быть гарантировано. Если вы смущены моим вопросом, пожалуйста, сообщите мне, когда использовать CPACK_PACKAGE_INSTALL_DIRECTORY
? потому что описание документации об этой переменной действительно привлекательно, и это действительно то, что я хочу, но я просто не мог заставить ее работать.
Пожалуйста, посоветуйте мне.
Петр