如何永久配置 VSCode 以使用 cl.exe,而不从开发人员命令提示符启动它?

问题描述 投票:0回答:1

因此在 Windows 上的 VS Code 上编译 C 绝对是一场噩梦。

我能够“强制”VSCode 编译和调试我的 C/C++ 程序的唯一方法是:

  1. 通过 VS 2022 的开发者命令提示符启动 VSCode,使用: %comspec% /k "C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\VsDevCmd.bat"
    
    
  2. 或者设置一个
  3. .bat
     文件,正如类似的 
    StackOverflow 问题 所建议的那样。
虽然这些方法有效,但它们感觉像是变通办法,并不理想。我想要的是让

cl.exe

 在 VSCode 中“本地”工作,而不需要依赖开发人员命令提示符或任何脚本。

有没有办法设置 VSCode,以便

cl.exe

 可以用于编译和调试 C/C++ 代码,而无需每次都执行这些手动步骤?我正在寻找更永久的解决方案来在 Windows 上正确设置 
cl.exe
 的环境。

c visual-studio-code cl
1个回答
0
投票
当我写这个问题时,我终于找到了解决方案,所以我决定在这里分享。 我试图让它变得n00b友好(win10 - x64)。

步骤(对于 x64):

  1. 找到并复制 x64

    cl.exe

     的位置,通常位于:

    C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\[version]\bin\Hostx64\x64
    
    

  2. Win+R 打开“运行”对话框,然后键入 sysdm.cpl

     获取系统属性

  3. 转到

    Advanced

    选项卡

  4. 点击

    Environment Variables

    
    

  5. System variables

     部分找到 
    Path
     变量并双击它

  6. 在弹出的新窗口中单击

    New

    并添加
    cl.exe
    的位置

  7. 点击

    OK

    
    

现在我们仍然需要添加运行

VARS

 时设置的 
Developer Command Prompt for VS YYYY
:

  1. 打开

    x64 Native Tools Command Prompt for VS YYYY

    。它必须是
    x64
    ,否则编译时会出现
    library machine type 'x86' conflicts with target machine type 'x64'
    错误。

  2. cd

     到您的首选目录,因为我们将创建一个文件

  3. 运行

    set > envvars.txt

    
    

  4. 在这个新文件中

    envvars.txt

    找到以下3行:

    a)

    INCLUDE=C:\...

    
    b) 
    LIB=C:\...
    
    c) 和 
    LIBPATH=C:\...
    
    

  5. 并删除其他所有内容。

现在有两种方法可以手动或通过一次性

VARS

 文件将这些 
System variables
 添加到 
*.bat
 中。我选择了
*.bat
文件方式:

  1. 我们将通过以下方式将

    envvars.txt

     转换为这个 
    *.bat
     文件:

    a) 在每个变量前面加上

    setx

    (永久设置环境变量)

    b) 将

    =

     替换为空格 
    
    

    c) 涉及带引号的路径

    ""

    
    

    d) 在每行路径后面添加

    /M

    (确保为系统设置变量而不仅仅是当前用户)

  2. 我们应该有这样的东西:

    setx INCLUDE "C:\Program Files\..." /M setx LIB "C:\Program Files\..." /M setx LIBPATH "C:\Program Files\..." /M
    
    
  3. envvars.txt

     重命名为 
    envvars.bat
    
    

  4. 以管理员身份执行

  5. 重新启动计算机

完成。

重新启动后,您应该能够启动 VS Code,然后进行编译和调试。 (假设您的

TASKS.JSON

LAUNCH.JSON
 设置正确)

© www.soinside.com 2019 - 2024. All rights reserved.