如何在GNU makefile中使用环境变量PROGRAMFILES(X86)?

问题描述 投票:1回答:1

我尝试在GNU Makefile中使用Windows 7的环境变量PROGRAMFILES(X86),但没有成功。

这里是一个最小的例子:

$(info DIR: $(PROGRAMFILES(X86)))
nop:
    @echo x 

如果执行此makefile,我只会得到

DIR: )
x

虽然我期望:

DIR: C:\Program Files (x86)
x

任何想法如何在GNU makefile中使用环境变量PROGRAMFILES(X86)?

我正在Cygwin上使用GNU make 4.1(在本机Windows上使用3.81)。我知道也有环境变量“ PROGRAMFILES”,但我确实需要“ PROGRAMFILES(X86)”

makefile environment-variables gnu-make
1个回答
3
投票

Etan提出了一个很好的主意。我做了一点修改,因此,以下内容确实有效:

b1 := (
b2 := )
$(info DIR: $(ProgramFiles$(b1)x86$(b2)) )
nop:
    @echo x 

但是我想出了一个更简单的方法:花括号似乎也能解决问题:

$(info DIR: ${ProgramFiles(x86)} )
nop:
    @echo x     

对于这两种解决方案,同样重要的是写ProgramFiles(x86)而不是大写PROGRAMFILES(X86)

© www.soinside.com 2019 - 2024. All rights reserved.