Я использую CMake для генерации моих make-файлов.Моя развертываемая цель - RPM, и все это работает хорошо.В соответствии с рекомендациями файловой системы мой RPM устанавливается на
/opt/mytool
/bin - executables
/lib64 - libraries
/etc/opt/mytool - configuration files
RPM создается с помощью CPack с использованием make package
Во время тестирования разработки я не хочу устанавливать RPM.Это требует повышенных привилегий и ограничивает любую конкретную машину одной (разработчик) версией за раз.Перед тем, как я начал работать со всеми RPM-компонентами, я смог «сделать установку» и создать простое дерево install
, например:
install
/opt/mytool
bin
lib64
Однако введение файлов конфигурации в другое местосклеил работы.Я бы хотел, чтобы это было расширено до
install
/etc/opt/mytool
, но я могу жить без него.К сожалению, когда я пытаюсь make install
я получаю эту ошибку:
Install the project...
-- Install configuration: "Debug"
CMake Error at cmake_install.cmake:49 (file):
file cannot create directory: /etc/opt/mytool. Maybe need administrative
privileges.
Обидной частью CMakeLists.txt
файла является
install(FILES ${PROJECT_SOURCE_DIR}/../Config/mytool.cfg
DESTINATION /etc/opt/mytool
)
Я смотрел на CMakerpm устанавливает файл в /etc/init.d, но мой RPM-сборка просто отлично (и я использую CMake 3)
В чем разница между make install
и make package
(яМожно сделать вывод, что на последнем работает CPack, и он работает просто отлично)?Как я могу создать дерево установки разработки