Permissions 将'sudo-E'与'make-install'一起使用`

Permissions 将'sudo-E'与'make-install'一起使用`,permissions,makefile,sudo,Permissions,Makefile,Sudo,在一个Makefile中,我有几个变量控制在安装过程中放置二进制文件之类的东西的位置。大概是这样的: PREFIX_DIR ?= /usr/local INSTALL_DIR ?= $(PREFIX_DIR)/bin libdir = $(PREFIX_DIR)/lib # etc. etc. 问题在于,当用户运行sudomakeinstall时,出于安全原因,环境变量似乎会被覆盖。要求用户运行sudo-E make install是否合理,或者是否有更好的解决方案?Makefile变量通常在

在一个Makefile中,我有几个变量控制在安装过程中放置二进制文件之类的东西的位置。大概是这样的:

PREFIX_DIR ?= /usr/local
INSTALL_DIR ?= $(PREFIX_DIR)/bin
libdir = $(PREFIX_DIR)/lib
# etc. etc.

问题在于,当用户运行
sudomakeinstall
时,出于安全原因,环境变量似乎会被覆盖。要求用户运行
sudo-E make install
是否合理,或者是否有更好的解决方案?

Makefile变量通常在命令行中指定,而不是在环境变量中指定,例如
make PREFIX_DIR=/my/DIR install
@Barmar如果解决了这个问题,我不知道这是首选方法。