Файл log4cplus не может создавать права администратора каталога
Я пытаюсь установить Log4Cplus с помощью Cmake.
Сначала я загрузил log4cplus в каталог под названием 3rdparty
git clone https://github.com/log4cplus/log4cplus.git --recursive
Позже в общем CMakeLists.txt я сделал следующее
cmake_minimum_required (VERSION 3.4)
enable_testing()
include(USR_macros_and_functions.cmake)
project (unixpackages)
USR_init_project(unixpackages)
#other packages ...
add_subdirectory(3rdParty/log4cplus)
#other packages ...
USR_add_build_repo_targets()
Проблема в том, что при попытке собрать я получаю следующую ошибку:
-- Installing: /home/compilation/UnixPackagesFareShopping/Output_API/Lib/libvalidator.so
-- Removed runtime path from "/home/compilation/UnixPackagesFareShopping/Output_API/Lib/libvalidator.so"
CMake Error at 3rdParty/log4cplus/src/cmake_install.cmake:36 (file):
file cannot create directory: /usr/local/lib64/cmake/log4cplus. Maybe need
administrative privileges.
Call Stack (most recent call first):
3rdParty/log4cplus/cmake_install.cmake:37 (include)
cmake_install.cmake:48 (include)
Я понимаю, что не имею права устанавливать его в /usr/local/lib64/cmake/
но проблема в том, что я не знаю, где мне следует изменить путь, чтобы он указывал на каталог, в который у меня есть права на его установку.
Я попытался посмотреть, смогу ли я найти lib64 во всех файлах конфигурации и cmake. Я только нашел это
./configure: # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
./configure: # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
./m4/libtool.m4: # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
Я новичок в Cmake, так что извините за вопрос
0 ответов
Как уже говорилось, вы можете настроить место установки с помощью CMake, просто используйте CMAKE_INSTALL_PREFIX
переменная (см. ответы на этот вопрос). Вы можете установить эту переменную в то место, к которому у вас есть доступ, чтобы программное обеспечение в конечном итоге было установлено в этом месте.
Вы можете установить CMAKE_INSTALL_PREFIX
переменная в командной строке при вызове cmake
, или в самом файле CMake перед любыми вызовамиproject
, как вы это сделали:
set(CMAKE_INSTALL_PREFIX ${PROJECT_SOURCE_DIR}/3rdParty/log4cplusclea)