我正在使用 VS2008,并开发 C/C++ 项目。我正在使用 .bat 文件从命令行(VC2k8 命令提示符)构建我的项目。我需要一种在构建时动态包含预处理器指令的方法。
我正在使用 devenv 从命令行构建。
>devenv my\project\path\myproject.sln /build release > logs\build.log
其实我想在批处理文件中设置一个基于命令行参数的宏定义。我可以保留两个不同的 .vcproj 文件,但是在保留多个项目/sln 文件时会出现问题。 我的批处理文件是这样的...
if (condition)
#define MYPROC_ENABLE_MYMODULE "yes" // To be included in the project.
else
#define MYPROC_ENABLE_MYMODULE "no"
非常感谢任何帮助。
谢谢。
最佳答案
一个选项是设置 the CL
environment variable ,使用类似的东西:
set CL=/DMYPROC_ENABLE_MYMODULE
C++ 编译器 (cl.exe
) 在运行时会将 CL
环境变量的内容添加到其命令行。
我知道如果您使用 msbuild
构建,您可以定义宏,但我不确定您在直接使用 devenv
时是否可以这样做。
关于visual-studio - 从命令行构建 VS2008 动态添加预处理器指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3551798/