Windows 命令行下使用 cl.exe 直接编译 C/C++ 程序

前言

与在 IDE 中编译相比,命令行模式编译速度更快,并可以避免被 IDE 产生的一些附加信息所干扰,下面介绍在 Windows 10 命令行下编译 C/C++ 程序。

教程

完成这项任务,系统中首先需要正确安装 Visual Studio IDE。此 IDE 的安装不再赘述,本教程中以 Visual Studio 2019为例。

然后需要配置环境变量,具体为以下三项。(路径中的版本号依据实际情况而确定,不要直接复制

  • Path环境变量

添加cl.exe的路径到Path环境变量的目的是使命令行能找到cl.exe。在Path环境变量中添加如下条目:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\Hostx64\x64
  • INCLUDE环境变量

添加Path环境变量的目的是使编译器找到include文件夹。在系统变量中新建INCLUDE环境变量(注意大写)。
添加如下条目:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include
C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\shared
C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt
C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\um
C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\winrt
  • LIB环境变量

在系统变量中新建LIB环境变量(注意大写)。
添加如下条目:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\lib\x64
C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64
C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\um\x64;

测试

新建一个test.cpp源文件:

#include <iostream>
using namespace std;
int main()
{
    cout << "Hello, world!" << endl;
    return 0;
}

启动命令行,切换到源代码所在目录,执行cl test.cpp命令

E:\Project\Cpp>cl test.cpp
用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.24.28316 版
版权所有(C) Microsoft Corporation。保留所有权利。

test.cpp
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\ostream(743): warning C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc
test.cpp(5): note: 查看对正在编译的函数 模板 实例化“std::basic_ostream<char,std::char_traits<char>> &std::operator <<<std::char_traits<char>>(std::basic_ostream<char,std::char_traits<char>> &,const char *)”的引用
Microsoft (R) Incremental Linker Version 14.24.28316.0
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:test.exe
test.obj

可见生成了text.exe文件,并可以正常运行:

E:\Project\Cpp>test
Hello, world!
  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值