VS Code 进行远程Cmake编译

Posted 玛丽莲茼蒿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VS Code 进行远程Cmake编译相关的知识,希望对你有一定的参考价值。

VS code远程连接服务器,见上一篇:

VS Code 远程连接服务器_玛丽莲茼蒿的博客-CSDN博客

如果服务器上是一个比较大的项目,最好用cmake编译。实现了 VS Code的远程编辑功能还是不够的,如果要编译,还得打mkdir build、cd build、cmake .. 、make等一堆命令。所以如果能用VS的插件cmake进行远程的源文件的cmake就更好了。

VS Code构建C++远程开发环境IDE - 知乎

 --------------------------------失败了别看了------------------------

还需要在远程开发这个工作空间中重新安装一遍插件(C/C++扩展、CMake、CMake Tools)?

在远程主机上新建".vscode"文件夹,vscode才能帮忙编译,否则vscode 只是远程打开了各个文件,只能作为编辑器而不能作为编译器。

 

1.  c_cpp_propertires.json文件

 按"ctrl+p",在搜索栏中输入一个">",然后输入edit configurations(UI),点击

进去以后,点击“c_cpp_propertires.json”这个链接,就在.vscode文件夹中生成了c_cpp_propertires.json文件


    "configurations": [
        
            "name": "Linux",
            "includePath": [
                "$workspaceFolder/**"
            ],
            "defines": [],
            //"compilerPath": "/usr/bin/clang",  //原来默认的
            "compilerPath": "/usr/bin/gcc",
            "cStandard": "c11",
            "cppStandard": "c++14",
            //"intelliSenseMode": "linux-clang-arm64"  //原来默认的
            "intelliSenseMode": "gcc-x64",
            "configurationProvider": "ms-vscode.cmake-tools"
        
    ],
    "version": 4

 

 2. launch.json文件

launch.json文件忘记是怎么出现的了,可以自己新建一个。launch.json文件是告知VSCode在启动调试过程中如何启动程序,类似Visual Studio的调试选项。

要修改的:

(1)program:指定可执行文件的路径。如果以后再CMakeList.txt更改了可执行文件的名称,这里也需要修改

(2)preLaunchTask:这个是新加的元素,默认是没有的。指定了在调试之前需要执行的任务,去tasks.json里面找。


    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [

        
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "$workspaceFolder/build/clienttriton",  //可执行文件的路径
            "args": [],
            "stopAtEntry": false,
            "cwd": "$fileDirname",    //工作目录($fileDirname: the current opened file's dirname)
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "preLaunchTask": "build debug", // 这是在调试之前需要执行的任务,需要跟tasks.json文件配合起来工作
                                            //所以需要新建一个tasks.json文件,里面定义一个label为"build debug"的任务
            "setupCommands": [
                
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                
            ]
        
    ]

 3.tasks.json文件


    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        
            "label": "build debug",
            "type": "shell",
            "linux": 
                "command": "mkdir -p build && cd build && cmake ../ && make", // 这项配置是定义在每次编译之前都会执行一遍cmake
            
        
    ]

以上是关于VS Code 进行远程Cmake编译的主要内容,如果未能解决你的问题,请参考以下文章

Mac+VScode配置CMake编译HelloWorld

ubuntu(Linux)安装Vs code并配置c++编译及cmake多文件编译

VS远程调试(Visual Studio)远程连接到linux cmake(跨平台开发)(适用于VS2019,且远程目标平台cmake版本大于等于3.8)

VS Code配置markdown代码片段

VS Code配置markdown代码片段

VS Code配置snippets代码片段快速生成html模板,提高前端编写效率