如何使用 visual studio 命令行工具将项目构建到特定文件夹?

How to build the project to specific folder with visual studio command line tools?

我已经为名为 project_name.

的 c++ 项目获得了这个简化的文件夹结构
project_name
    -build
    -headers
    -sources 
    -resources

如果我这样做 cl /EHsc /W4 sources/source1.cpp sources/source2.cpp /link /out:project_name ... 它只会在当前目录中创建构建文件,即 project_name,结果是:

project_name
    -build
    -headers
    -sources 
    -resources
     project_name.exe         
     source1.obj
     source2.obj
     etc

我想要的是指定必须放置所有构建文件的文件夹,在我的例子中是 build 文件夹。

cllink 需要哪些选项才能从 project_name 目录执行此操作?

在您的项目目录中放置一个 .bat 文件并使用它来构建您的项目。

pushd %~dp0/build
cl %~dp0/sources/source1.cpp %~dp0/sources/source2.cpp
popd

%~dp0 自动扩展为项目目录的完整路径,因此您可以从任何地方执行此 .bat 文件。