我正在使用GNU make使用Microsoft Visual C ++构建项目,我希望能够从任何CMD窗口运行它,而不必打开路径(以及其他各种环境变量)的预配置项目)由批处理文件预先配置。理想情况下,我想在makefile本身中定义相关的环境变量,所以我需要做的就是弹出一个CMD窗口并输入“make”。
总的来说,这很简单,但我正在与PATH斗争;到目前为止,我尝试采用标准PATH变量(在操作系统中定义)并将路径附加到各种构建工具的所有语法都失败了。
而不是通过我尝试过的六种或七种不同的语法 - 其中一些给出了错误信息,其中一些没有给出错误信息但只是没有用 - 我会明白地问这个问题:
到目前为止,我最接近成功的是定义:
LINK =“C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ VC \ bin \ link.exe”
...并用$(LINK)替换对“link.exe”的所有后续引用,但是这会失败,因为link.exe还有各种依赖项(例如mspdb80.dll),它们也必须在路径上。 / p>
答案 0 :(得分:8)
这有效:
DevEnvDir=C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE
VCINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin
export Path:=$(DevEnvDir);$(VCINSTALLDIR);$(Path)
需要“出口”和案件敏感性以前曾打败过我。