文档列表见:Rust 移动端跨平台复杂图形渲染项目开发系列总结(目录)
一共就三步:
cargo fix --edition
- Cargo.toml添加
edition = "2018"
cargo build
首先,如果用了git等版本控制系统,最好确保工作区是干净,方便出错时Revert代码,不建议用--allow-dirty
。当前代码如果在Rust 2015 Edition编译失败,则cargo fix
无法通过,所以要确保代码可在Rust 2015 Edition正常编译。同时,确保已安装Rust 1.31.0或以上版本的stable编译工具链,最好用rustup default stable
设置成默认工具链。
正式开始,cargo fix --edition
自动帮我们迁移到Rust 2018 Edition语法。如果有feature编译,一定要在项目对应的Cargo.toml路径下执行cargo fix
命令。workspace类型项目特别容易犯这个错误,错误的路径将不会处理--feature
参数!
由于fix操作没修改Cargo.toml,我们要手工给项目对应的Cargo.toml添加edition = "2018"
,试试cargo build
,现在应该妥了。
[package]
name = "obsessed"
version = "0.1.0"
workspace = ".." # 非workspace项目不要加这行
build = "build.rs" # 没build.rs不要加这行
edition = "2018"
复制代码
如果要回退到2015 Edition,删掉edition = "2018"
或改成edition = "2015"
,然后将cargo fix
作的语法修改还原回去才能正常编译。
详细信息可阅读官方文档 edition-guide/introduction。
另外,终端中执行rustup doc --book
可查看Rust学习文档。