从0开始学DX Mesh第一天--DX Mesh简介和基础环境配置

组织介绍

DigQuant Technology点宽科技开源项目:

Direct Exchange Mesh (DX Mesh) for Web 3.0 - 面向 Web3.0 的分布式应用架构

历史沿袭

DX Mesh是由DQtech团队提出的"RPC网络+区块链网络"的双层网络设计思路,在此设计概论基础上,DX Mesh项目进行了大胆的设计,一个新的"Dual Network Architecture(DNA)"网络结构被提出。 开源项目链接:gitee.com/DXmesh

基础环境配置

DX Mesh项目于2023年1月开始,摒弃了原来C++为主要开发语言,采用Rust设计开发。 因为底层架构是Rust语言,需要配置Rust的开发环境。

安装C++和Rust

Rust依赖于C++编译环境,安装rust之前,需要先在windows安装visual studio, 安装教程链接:blog.csdn.net/qq_44005305... 或者可以用GCC的编译环境,安装教程链接:blog.csdn.net/david200099...

安装完C++即可安装Rust,rust中文官网链接:www.rust-lang.org/zh-CN(下载时间有点长,建议开VPN) 下载完后打开如下图所示: rustup-init.exe 是 Rust 的安装和管理工具,默认情况下,它会同时安装这些工具:rustc,rust-std,cargo,rust-docs,rustfmt,clippy。其中,rustc 是 Rust 的编译工具,cargo 是 Rust 的包管理工具。 等待安装即可 安装结束 查看rust版本

powershell 复制代码
rust --version

或者使用命令 rustc -V

查看cargo版本

powershell 复制代码
cargo --version

配置Rust环境

安装完后需要配置Rust环境 一、Windows环境下: 1). 配置 rust 国内镜像 在系统环境变量中添加如下变量(选一个就可以,可以组合):

清华大学国内镜像

powershell 复制代码
RUSTUP_DIST_SERVER:https://mirrors.tuna.tsinghua.edu.cn/rustup
RUSTUP_UPDATE_ROOT:https://mirrors.tuna.tsinghua.edu.cn/rustup/rustup

中国科学技术大学国内镜像

powershell 复制代码
RUSTUP_DIST_SERVER:https://mirrors.ustc.edu.cn/rust-static
RUSTUP_UPDATE_ROOT:https://mirrors.ustc.edu.cn/rust-static/rustup

2). 配置 cargo 国内镜像 在 cargo 安装目录下新建 config 文件(若默认安装Rust路径,则在C:\Users.cargo下添加config文件,注意 config 没有任何后缀!!!),文件内容如下:

powershell 复制代码
[source.crates-io]
registry = "https://github.com/rust-lang/crates.io-index"
replace-with = 'tuna'

# 清华大学
[source.tuna]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

# 中国科学技术大学
[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index"
# 设置代理
[http]
proxy = "127.0.0.1:8889" #这里的ip为你本地ip
[https]
proxy = "127.0.0.1:8889" #这里的ip为你本地ip

这是我电脑下的配置文件的具体位置 二、Liunx环境下: 目标服务器是 Linux(CentOS 7) 64bit, 所以我们添加的 target 应该是x86_64-unknown-linux-gnu(动态依赖) 或者x86_64-unknown-linux-musl(静态依赖)

解释:

动态依赖:目标服务器需要包含动态依赖的相关库(用户共享库) 静态依赖,目标服务器不需要包含相应的库,但是打包文件会更大些 1). 添加需要的 target

powershell 复制代码
rustup target add  x86_64-unknown-linux-musl

2). 在 cargo 安装目录下新建 config 文件(注意 config 没有任何后缀),添加的文件内容如下:

powershell 复制代码
[target.x86_64-unknown-linux-musl]
linker = "rust-lld"

3). 构建

powershell 复制代码
cargo build --target x86_64-unknown-linux-musl

拉取gitee上的DX Mesh项目

git方法

1).首先先确保你的电脑里面有git软件,git的下载安装链接:blog.csdn.net/mukes/artic...

2).打开Git Bash,输入以下命令:

powershell 复制代码
git clone https://gitee.com/DXmesh/xPort.git
git clone https://gitee.com/DXmesh/xComPythonLib.git
git clone https://gitee.com/DXmesh/xComBuilder.git
git clone https://gitee.com/DXmesh/Common.git
git clone https://gitee.com/DXmesh/xComService.git
git clone https://gitee.com/DXmesh/xComRustLib.git

结果如下图所示: git拉取过程 拉取完后的所有项目

第二天预告

开始搭建DX Mesh的整个网络架构。

相关推荐
nbsaas-boot2 小时前
Java 正则表达式白皮书:语法详解、工程实践与常用表达式库
开发语言·python·mysql
仗剑_走天涯2 小时前
基于pytorch.nn模块实现线性模型
人工智能·pytorch·python·深度学习
chao_7892 小时前
二分查找篇——搜索旋转排序数组【LeetCode】两次二分查找
开发语言·数据结构·python·算法·leetcode
chao_7896 小时前
二分查找篇——搜索旋转排序数组【LeetCode】一次二分查找
数据结构·python·算法·leetcode·二分查找
烛阴7 小时前
Python装饰器解除:如何让被装饰的函数重获自由?
前端·python
noravinsc7 小时前
django 一个表中包括id和parentid,如何通过parentid找到全部父爷id
python·django·sqlite
ajassi20007 小时前
开源 python 应用 开发(三)python语法介绍
linux·python·开源·自动化
沉默媛8 小时前
如何安装python以及jupyter notebook
开发语言·python·jupyter
Deng9452013149 小时前
基于Python的旅游数据可视化应用
python·numpy·pandas·旅游·数据可视化技术
2401_878624799 小时前
pytorch 自动微分
人工智能·pytorch·python·机器学习