我尝试获取ProgramFiles
环境变量的路径,该路径应该在C:\Program Files (x86)
机器上扩展为x64
并在C:\Program Files
机器上扩展为x86
。
问题是,如果执行此操作,则在nmake文件中:
all:
echo $(PROGRAMFILES)
每次都会扩展为
C:\Program Files
,这是错误的。来自x64机器的环境详细信息:
ProgramFiles(x86)=C:\Program Files (x86)
ProgramW6432=C:\Program Files
:: this one is special, if will return different results based on current process x86/x64
ProgramFiles=C:\Program Files (x86) or C:\Program Files
PROCESSOR_ARCHITECTURE=x86 or x64
现在更新的问题是如何在nmake中获取x86程序文件的位置,以使其在x86和x64机器上都能工作?
最佳答案
此表达式似乎可以在64位Windows 7上运行,而nmake
可以在32位和64位上运行:
%%PROGRAMFILES(x86)%%
例如
LC = %%PROGRAMFILES(x86)%%\Microsoft SDKs\Windows\v7.0A\bin\lc.exe
关于environment-variables - 如何从x64机器上的nmake访问ProgramFiles环境变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3329141/