rust 很快进入linux内核开发,作为高效后台语言值得学习
tauri是代替electron的跨平台框架,不打包浏览器内核,所以打包出来体积小
安装rust 命令 curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
安装后看版本 rustc -V
看构建工具版本 cargo -V
# 新建工程 cargo new hello-rust
# 进入目录构建 cd hello-rust
cargo build
# 运行 cargo run
现在vscode比较流行下载发现很慢
https://az764295.vo.msecnd.net/stable/e2816fe719a4026ffa1ee0189dc89bdfdbafb164/code_1.75.0-1675266613_amd64.deb
换国内镜像 wget https://vscode.cdn.azure.cn/stable/e2816fe719a4026ffa1ee0189dc89bdfdbafb164/code_1.75.0-1675266613_amd64.deb
在visualstudiocode里配置rust-analyzer 实时编译和分析你的 Rust 代码,注意需要glic2.5,deepin15.11不匹配,一般不要尝试自己单独加glibc,可能引起系统混乱,还是直接升级deepin20版本再用这个插件,另外离线下载安装了codelldb,方便调试,rust syntax:为代码提供语法高亮
开发rust实验成功的2个vscode配置文件,记得离线下载安装了codelldb
{
//tasks.json 运行前的构建工作
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "cargo",
"command": "build",
"problemMatcher": [
"$rustc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
{
// launch.json
"version": "0.2.0",
"configurations": [
{
"type": "lldb",
"request": "launch",
"name": "Debug executable 'hello-rust'",
"preLaunchTask": "build",
"program": "${workspaceFolder}/target/debug/${workspaceFolderBasename}",
"args": [],
"cwd": "${workspaceFolder}"
}
]
}
rust下载依赖库可以更新国内源
(http://mirrors.ustc.edu.cn/help/index.html) vim ~/.cargo/config
[source.crates-io]
replace-with = 'ustc'
[source.ustc]
registry = "https://mirrors.ustc.edu.cn/crates.io-index"
vscode编译时一直卡着不动,清空缓存重来
rm -rf ~/.cargo/.package-cache
# 不能进入调试模式
文件->首选项->设置(File -> Preferences -> Settings)要启用任何位置允许断点
搜索break 选上 Allow setting breakpoints in any file
还是不行那可能是以前编译出没断点的输出,清空 cargo clean 重新执行
全局安装tauri打包工具
cargo install tauri-bundler --force
安装tauri还需要一些库
sudo apt-get install libsoup2.4-dev
sudo apt-get install javascriptcoregtk-4.0
sudo apt-get install libwebkit2gtk-4.0-37
sudo apt-get install libwebkit2gtk-4.0-37-gtk2
sudo apt install libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev
libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev
测试安装tauri
npm install tauri
如果下载有些库失败,可以考虑更新域名配置
把下面域名保存到C:\Windows\System32\drivers\etc\hosts文件内
185.199.108.133 raw.githubusercontent.com
185.199.109.133 raw.githubusercontent.com
185.199.110.133 raw.githubusercontent.com
185.199.111.133 raw.githubusercontent.com
linux下文件是 /etc/hosts
查看当前使用的镜像源**
npm get registry
全局设置taobao镜像源**
npm config set registry http://registry.npmmirror.org
快速开始
cargo install create-tauri-app
cargo create-tauri-app
运行 cargo tauri dev
打包 cargo tauri build 记得修改 tauri.config.json中tauri.bundle.identifier
第一次打包比较慢,为了加快可以吧tauri.bundle.targets 值all更新为deb,这样就少打一些工作,不用浪费在appimage上
一个空的helloworld工程打包结果确实比electron打包小得多,可以考虑以后某些项目采用。
tauri后端现在使用rust语言,前端htmljscss是可以选择各种框架,小的项目就原始html都能用。
回头先学习一下rust吧,注意一点引入依赖库有些中横,到代码里可能是下横杠