流媒体ZLM配置vscode远程开发

本博客主要介绍流媒体ZLmediakit通过使用vscode配置工程

(1)首先简单介绍Windows上的(visual studio 20XX)编译和调试:

从GIThub下载ZLmediakit源代码,将子模块都同步好;在Windows上安装好cmake 3.24+;安装号visual studio 2015/17/19/22都可以

然后Cmake打开ZLM目录,指定编译的工程目录,选择好编译的配置信息;生成,打开工程,即可使用;有些宏对应的库可能没编译成功,可以打开工程后,通过IDE配置

1754459433590

 

1754459546199

附加依赖库,库目录,头文件目录等,需要用到的时候在配置就可以了

1754459683541

 平时出现比较多的是openssl的bio不存在,注意看报错在哪个子模块,给对应的子模块(子工程)的属性配置好openssl的路径;

如果你暂时用户到openssl也可以把宏开关关了(属性--c/c++---预处理器---预处理定义)

1754460971113

1754461669086

 (2)VScode远程开发部署

一般情况下ZLM是部署在Linux_x86或者arm平台使用居多;所以我们经常会需要开发Linux C++;但是Linux上没有什么顺手的IDE,所以一般情况下大家喜欢使用VScode;

下边就简单介绍下VScode的远程开发;

首先下载vscode,安装插件;下边这篇文章基本全覆盖了;我们还是照着走一遍,搬运下大佬记录的流程

https://blog.csdn.net/hutaotaotao/article/details/140899244?spm=1001.2014.3001.5506    (博主:hutaotaotao

图片

 

(2.1)本机安装openssl

  我的机器之前安装过了

  管理员身份打开powershell, 输入:Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'

1754462544200

   如果你输入上边这条命令发下没有图上的打印;就安装下:

    Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

(2.2)win 的本机电脑 生成RSA公钥和私钥

        1754463071862

      1754463167018

      将rsa公钥(**.pub)添加到远程linux的authorized_keys文件中;

      作用:以后用vscode远程连接服务器的时候不用每次都输入用户密码。当然也可以不操作这一步,只不过每次登录需要输入一下密码。

      在远程linux中,进入到用户目录下的.ssh文件夹中 (搬运hutaotaotao)

     这边博主使的WIN-scp,拷贝到Linux服务器的对应文件夹下;其他的ssh-shell,也可以;

     1754464270910

   然后将本机生成的rsa_id.pub公钥上传至服务器【~/.ssh】处。
   再然后输入以下命令将其追加写入到~/.ssh目录下的authorized_keys文件中,为什么是追加写入?因为可能存在其他用户的公钥,千万别覆盖写入!
      cat id_rsa.pub >> authorized_keys
   如果不存在authorized_keys,【cat id_rsa.pub >> authorized_keys】也会自动生成出来。

1754464545524

 (2.3)vscode安装Remote - SSH插件

1754464689299

 

1754465076283

 然后ssh连接远程设备

图片

 输入的连接命令(就是ssh、xshell登录这个机器时候的端口,IP):  ssh 用户名@ip地址 -p 端口号   

1754465888860

 

打开文件夹: /usr/data/aaa/zlm  

1754465441617

 

然后你就打开了代码

图片

 想调试的话还需要tasks.json 和launch.json

{
///该文件是launch.json
// Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "(gdb) Launch", "type": "cppdbg", "request": "launch", // "program": "${workspaceFolder}/release/linux/Debug/api_tester_h264_media_server", // "args": ["/works/zlmediakit/ZLMediaKit/release/linux/Debug/test.h264"], "program": "${workspaceFolder}/release/linux/Release/MediaServer", //可执行程序的目录 "args": [], "stopAtEntry": false, "cwd": "${fileDirname}", "environment": [], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true }, { "description": "Set Disassembly Flavor to Intel", "text": "-gdb-set disassembly-flavor intel", "ignoreFailures": true } ], "preLaunchTask": "tasks.json中的lable", } ] }

 

 

启动调试:

1754475082010

 如果自己不会写tasks.json就安装下cmake tool自动生成

1754482169748

 

1754482327998

 

图片

 

图片

 

图片

 

1754483179057

 debug的时候就可以调试了:注意这个调试的时候不依赖launch.json。所以直接点开debug是会弹出“要自定义运行和调试。。。。”

1754483601551

然后直接在cmaketool下debug就可以了:

图片

 

 

图片

 

posted on 2025-08-06 19:09  邗影  阅读(104)  评论(0)    收藏  举报

导航