Build Cmake不';t尊重CMAKE_INSTALL_前缀的值

Build Cmake不';t尊重CMAKE_INSTALL_前缀的值,build,cmake,installation,gnu-make,awesome-wm,Build,Cmake,Installation,Gnu Make,Awesome Wm,我正在尝试从源代码安装awesomewm。因此,我创建了一个构建目录并执行了以下命令: cmake .. -DCMAKE_INSTALL_PREFIX=$PREFIX 但是,makeinstall尝试将一些程序文件放入/usr/local/share中,但我不希望将它们放在那里: > make install [ 3%] Built target generated_sources [ 6%] Built target test-gravity [ 9%] Built target

我正在尝试从源代码安装awesomewm。因此,我创建了一个构建目录并执行了以下命令:

cmake .. -DCMAKE_INSTALL_PREFIX=$PREFIX
但是,
makeinstall
尝试将一些程序文件放入
/usr/local/share
中,但我不希望将它们放在那里:

> make install
[  3%] Built target generated_sources
[  6%] Built target test-gravity
[  9%] Built target lgi-check
[  9%] Built target version_stamp
[ 29%] Built target generated_icons
[ 31%] Checking for LGI...
Building for Lua 5.3.
Found lgi 0.9.2.
[ 31%] Built target lgi-check-run
[ 35%] Built target generate_awesomerc
[100%] Built target awesome
Install the project...
-- Install configuration: ""
-- Up-to-date: /home/user/.local/bin/awesome
-- Up-to-date: /home/user/.local/bin/awesome-client
-- Installing: /usr/local/share/awesome/lib
CMake Error at cmake_install.cmake:69 (file):
  file INSTALL cannot make directory "/usr/local/share/awesome/lib": No such
  file or directory


make: *** [Makefile:107: install] Error 1

是否有一些类似于
cmake\u INSTALL\u PREFIX
cmake\u INSTALL\u LIBDIR
的cmake变量,我需要为
share
数据指定这些变量?

在使用cmake模块时,您将为
share
指定
cmake\u INSTALL\u DATADIR
:include()

注意:当使用
cmake--build-build--target安装--DESTDIR=foo
请阅读CMAKE\u安装前缀文件

在UNIX上,可以使用DESTDIR机制来重新定位整个安装。DESTDIR表示目标目录

警告:DESTDIR不能在Windows上使用,因为安装前缀通常包含类似于C:/Program文件中的驱动器号,不能用其他前缀作为前缀


src:

这取决于项目安装文件的方式,因此需要检查
CMakeLists.txt
以获得答案变量
PREFIX
的值是多少?@TimothyBrown
PREFIX
设置为
${HOME}/.local
,我想在哪里安装程序。我通常使用
cmake--build--target install--DESTDIR=${PREFIX}