【C++】一次rustdesk-server编译记录

news/2024/12/21 21:09:12/

RustDesk Server 是一个开源的远程桌面解决方案,允许用户自托管自己的远程桌面服务器。该项目是免费且开源的,支持多种平台和环境。RustDesk Server 提供了 ID/Rendezvous 服务器和 Relay 服务器,以及一些 CLI 工具,方便用户进行远程管理和控制。

安装依赖

首先,确保你的系统已经安装了 cargo 和 rust

克隆项目

克隆 RustDesk Server 项目到本地:

git clone https://github.com/rustdesk/rustdesk-server.git
cd rustdesk-server

构建项目

使用 cargo 构建项目:

cargo build --release

构建完成后,会在 target/release 目录下生成三个可执行文件:

hbbs.exe - RustDesk ID/Rendezvous 服务器
hbbr.exe - RustDesk Relay 服务器
rustdesk-utils.exe - RustDesk CLI 工具

启动服务器

运行以下命令启动服务器:

./target/release/hbbs
./target/release/hbbr

编译log:

rust">E:\1github_pro\rustdesk\rustdesk-server>cargo build --releaseUpdating crates.io indexUpdating git repository `https://github.com/open-trade/confy`Updating git repository `https://github.com/open-trade/tokio-socks`Updating git repository `https://github.com/open-trade/async-speed-limit`Downloaded cfg-if v1.0.0Downloaded instant v0.1.12...Downloaded rand v0.8.5
warning: spurious network error (3 tries remaining): [28] Timeout was reached (download of `regex-syntax v0.6.25` failed to transfer more than 10 bytes in 30s)
warning: spurious network error (3 tries remaining): [28] Timeout was reached (failed to download any data for `regex v1.5.5` within 30s)Downloaded tower v0.4.12...Downloaded regex-syntax v0.6.25
warning: spurious network error (3 tries remaining): [92] Stream error in the HTTP/2 framing layer (HTTP/2 stream 61 was not closed cleanly: PROTOCOL_ERROR (err 1))Downloaded tokio v1.20.0Downloaded windows_x86_64_msvc v0.36.1Downloaded windows_x86_64_msvc v0.48.0Downloaded zstd-sys v1.6.2+zstd.1.5.1
warning: spurious network error (3 tries remaining): [92] Stream error in the HTTP/2 framing layer (HTTP/2 stream 19 was not closed cleanly: PROTOCOL_ERROR (err 1))
warning: spurious network error (3 tries remaining): [92] Stream error in the HTTP/2 framing layer (HTTP/2 stream 177 was not closed cleanly: PROTOCOL_ERROR (err 1))Downloaded winapi v0.3.9Downloaded sodiumoxide v0.2.7...Compiling hbb_common v0.1.0 (E:\1github_pro\rustdesk\rustdesk-server\libs\hbb_common)Compiling axum v0.5.5Compiling sqlx-macros v0.6.0Compiling sqlx v0.6.0Compiling hbbs v1.1.11-1 (E:\1github_pro\rustdesk\rustdesk-server)
warning: fields `id`, `user`, and `status` are never read--> src\database.rs:41:9|
39 | pub struct Peer {|            ---- fields in this struct
40 |     pub guid: Vec<u8>,
41 |     pub id: String,|         ^^
...
44 |     pub user: Option<Vec<u8>>,|         ^^^^
45 |     pub info: String,
46 |     pub status: Option<i64>,|         ^^^^^^|= note: `#[warn(dead_code)]` on by defaultwarning: `hbbs` (lib) generated 1 warningFinished `release` profile [optimized] target(s) in 26m 56s
warning: the following packages contain code that will be rejected by a future version of Rust: nom v5.1.2
note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`E:\1github_pro\rustdesk\rustdesk-server>

编译结果:

输出结果


http://www.ppmy.cn/news/1527181.html

相关文章

python-桌面软件自动化(一)(实战微信发消息)

什么是pywinauto pywinauto是一组用于自动化Microsoft Windows GUI的python模块。 最简单的是&#xff0c;它允许您将鼠标和键盘操作发送到窗口对话框和控件。 pywinauto安装和启动 1.安装pywinauto 在 Pycharm 底部的终端&#xff08;Terminal&#xff09;窗口中输入 pip …

026.(娱乐)魔改浏览器-任务栏图标右上角加提示徽章

一、目标&#xff1a; windows中&#xff0c;打开chromium&#xff0c;任务栏中会出现一个chromium的图标。我们的目标是给这个图标的右上角&#xff0c;加上"有1条新消息"的小提示图标&#xff0c;也叫徽章(badge)注意&#xff1a;本章节纯属娱乐&#xff0c;有需要…

车载软件架构 --- SOA设计与应用(上)

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,无利益不试图说服别人,是精神上的节…

k8s的搭建

一、安装环境 准备三台主机&#xff1a; 192.168.1.66 k8s-master 192.168.1.77 k8s-node01 192.168.1.88 k8s-node02 网段&#xff1a; Pod ⽹段 172.16.0.0/16 Service ⽹段 10.96.0.0/16 注&#xff1a;宿主机⽹段、Pod…

基于python+django+vue的农产品销售管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于pythondjangovueMySQL的农…

RabbitMQ SDK 支持发布、消费,连接恢复,死信队列,多种使用场景

本文首发在这里 基于Example封装便于使用的SDK&#xff0c;支持发布、消费&#xff0c;连接恢复&#xff0c;死信队列&#xff0c;以及官方入门中的多种使用场景 参数解释&#xff08;测试代码在下面&#xff09; 直接使用amq.topic&#xff0c;仅是出于逻辑简单代码少&#…

RabbitMq中交换机(Exchange)、队列(Queue)和路由键(Routing Key)

RabbitMQ 是一个消息代理系统&#xff0c;使用交换机&#xff08;Exchange&#xff09;、队列&#xff08;Queue&#xff09;和路由键&#xff08;Routing Key&#xff09;来管理消息的传递。它们分别起到不同的作用&#xff0c;构成了消息从生产者到消费者的传递路径。 以下是…

Matlab如何配置小波工具(Wavelet Toolbox)

1、发现问题 因为实验要使用小波工具函数&#xff0c;运行时报错如下&#xff1a; 查看对应文件夹发现没有小波工具&#xff08;也可在控制台输入ver&#xff09;&#xff0c;检查是否有该工具&#xff0c;输入后回车返回如下&#xff1a; 2、下载工具包 没有这个工具就要去下…