【问题标题】:How do I compile a single source file within an MSVC project from the command line?如何从命令行编译 MSVC 项目中的单个源文件?
【发布时间】:2012-03-06 08:16:03
【问题描述】:

我即将开始对我们的构建进行一些基准测试/测试,我想从命令行驱动整个事情。我知道DevEnv,但我不相信它可以做我想做的事。

如果我可以在单个项目中构建单个文件,我会很高兴。

这个可以吗?

【问题讨论】:

  • 启动 Visual Studio 命令提示符,使用 cl.exe 和/或 link.exe。
  • @Ajay:感谢您的指点——我知道这些工具,但我想做的是使用与给定源的预先存在的 MSVC++ 项目中相同的设置来使用它们文件。能做到吗?

标签: visual-studio visual-c++ command-line benchmarking performance-testing


【解决方案1】:

魔法咒语如下。请注意,这仅在 VS 2010 中进行了测试 - 我听说这是具有此功能的 Visual Studio 的第一个版本:

咒语

<msbuild> <project> <settings> <file>

在哪里

  • msbuild 是到 MSBuild.exe 的路径。通常这应该由 VS2010 bat 文件为您设置,因此正确的最终会出现在您的 PATH 中,但如果不是我在 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe 找到了一个
  • project 是您的源文件所在的 vcxproj 文件的路径。
  • settings 包括以下内容:
    • /p:Configuration="Debug" // 或者你的配置是什么
    • /p:Platform=x64 // 或 x86
    • /t:ClCompile // 具体指定您要编译的文件
  • file 实际上是另一个设置:
    • /p:SelectedFiles="path_to_file"

注意事项

  • 对于&lt;project&gt;,我不得不指定一个项目 (vcxproj) 文件而不是解决方案 (sln) 文件。我本来使用的sln 里面有多个项目,所以无论如何都要走这条路(如果可以做到的话)。
  • 对于/p:Platform=x64 设置,有几个环境变量取决于您的目标平台(x64 和x86),因此请确保通过Visual Studio 的vcvarsall.bat 正确设置这些变量。
  • 关于SelectedFiles参数中的path_to_file,该路径必须是项目文件中指定的路径。如果路径与项目文件中用于引用源的路径不匹配,则似乎不起作用。

【讨论】:

    猜你喜欢
    • 2021-07-23
    • 1970-01-01
    • 2013-10-12
    • 2011-06-15
    • 2010-10-04
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多