Файл 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)
Другие вопросы по тегам