【Rust入门】(一)构建自己的第一个Rust项目
安装Rust
参考文档,指定安装目录和镜像配置。
rustc --version 检查是否安装成功。
构建程序
使用rustc编译运行
rustc
编译:rustc main.js
运行:
- Windows:
.\main.exe或main - Linux:
./main
注意:
- 编译成功后会生成一个二进制文件。在Windows上还会生成一个
.pdb文件,里面包含调试信息; - Rust是ahead-of-time编译的语言(预编译),执行可执行文件无需安装Rust;
rustc只适合简单的Rust程序。
程序解剖
fn main() {
println!("Hello World");
}
main()函数是每个Rust可执行程序最先运行的代码;- Rust的缩进是4个空格而不是tab;
println!()是一个Rust macro(宏)。
问题解决
问题:VSCode打开项目时报错:rust-analyzer failed to load workspace
解决:项目下新建文件 setting.json,增加如下内容
{
"rust-analyzer.server.extraEnv": {
"CARGO": "cargo.exe"
}
}
使用Cargo构建
Cargo
Cargo是Rust的构建系统和包管理工具。
安装Rust时会自动安装Cargo,cargo --version 检查是否安装成功。
创建项目
cargo new hello_cargo
项目结构
Cargo.toml:TOML格式是Cargo的配置格式package:包的配置(Rust的包称作crate)dependencies:依赖
src目录main.rs
.gitignore:cargo new时使用--vcs来自定义是否使用vcs
创建项目时没有使用cargo,也可以将项目改成上述结构来使用cargo。
命令
cargo build:构建项目
- 创建可执行文件:
target\debug\hello_cargo.exe - 生成
cargo.lock文件,负责追踪项目依赖的精确版本,不需要手动修改该文件
cargo run:构建和运行项目
cargo check:编译检查,但不生成可执行文件(开发过程中可反复调用,提高效率)
cargo build --release:为发布构建项目
- 编译时会进行优化
- 创建可执行文件:
target\release\hello_cargo.exe
【Rust入门】(一)构建自己的第一个Rust项目的更多相关文章
- Google C++测试框架系列入门篇:第二章 开始一个新项目
上一篇:Google C++测试框架系列入门篇:第一章 介绍:为什么使用GTest? 原始链接:Setting up a New Test Project 词汇表 版本号:v_0.1 开始一个新项目 ...
- Flutter入门教程(四)第一个flutter项目解析
一.创建一个Flutter工程 1.1 命令行创建 首先我们找一个空目录用来专门存放flutter项目,然后在路径中直接输入cmd: 使用 flutter create <projectname ...
- node项目的基本构建流程或者打开一个node项目的流程
1. 确立项目所需要的所有依赖.框架(比如bootstrap,vue,angular等) 2. 在项目的根目录下创建一个package.json文件,package.json文件是项目的最重要文件之 ...
- ASP.NET + MVC5 入门完整教程三 (上) ---第一个MVC项目
https://blog.csdn.net/qq_21419015/article/details/80420815 第一个MVC应用程序 1创建MVC项目 打开VS ,File--新建--项目,选择 ...
- java学习入门之---使用idea创建第一个maven项目
一.准备条件: 1.安装idea旗舰版 2.安装tomcat 二.打开idea开始创建 1.创建Project 2.选择项目类型为maven 3.输入组名和项目名 ---> 下一步 ----&g ...
- eclipse中创建一个maven项目
1.什么是Maven Apache Maven 是一个项目管理和整合工具.基于工程对象模型(POM)的概念,通过一个中央信息管理模块,Maven 能够管理项目的构建.报告和文档. Maven工程结构和 ...
- Maven(一)如何用Eclipse创建一个Maven项目
1.什么是Maven Apache Maven 是一个项目管理和整合工具.基于工程对象模型(POM)的概念,通过一个中央信息管理模块,Maven 能够管理项目的构建.报告和文档. Maven工程结构和 ...
- 基于Maven构建开发第一个Storm项目
前面说过了Storm的测试项目,那么此时我们更想自己写一个小项目来练练手,首先我们自己的Windows系统上首先应该安装好maven,然后启动Eclipse for JavaEE版本,接下来开始建立项 ...
- Rust入门篇 (1)
Rust入门篇 声明: 本文是在参考 The Rust Programming Language 和 Rust官方教程 中文版 写的. 个人学习用 再PS. 目录这东东果然是必须的... 找个时间生成 ...
- 5分钟APIG实战: 使用Rust语言快速构建API能力开放
序言:Rust语言简介 参与过C/C++大型项目的同学可能都经历过因为Null Pointer.Memory Leak等问题“被” 加班了不知道多少个晚上.别沮丧,你不是一个人,Mozilla Fir ...
随机推荐
- MySQL 5.7升级8.0过程(详解)
记一次MySQL 5.7升级8.0的详细过程,聊聊我的思路,希望可以帮助大家. 以一个例子为切入点 一.升级背景 为什么要升级到MySQL8.0?大概多久进行一次? 大家可以参考下图记录的各个版本的发 ...
- rar 压缩解压
rar wget https://www.rarlab.com/rar/rarlinux-x64-612.tar.gz # 压缩文件 rar a -r test.rar file # 解压文件 unr ...
- STM32中HAL库和标准库的区别
转载自:https://www.lmonkey.com/t/RwykY8bBX STM32标准库与HAL库比较 ST为开发者提供了非常方便的开发库.到目前为止,有标准外设库(STD库).HAL库.LL ...
- Mysql数据库基础第二章:(七)子查询
Mysql数据库基础系列 软件下载地址 提取码:7v7u 数据下载地址 提取码:e6p9 mysql数据库基础第一章:(一)数据库基本概念 mysql数据库基础第一章:(二)mysql环境搭建 mys ...
- 刚开始学python不知从何学习推荐你一本《Python零基础入门》书,免费领取
百度云盘:Python零基础入门学习pdf高清版书籍下载 提取码:yzh3
- 如何设置 iOS 开发环境
原文:https://lwebapp.com/zh/post/how-to-set-up-the-ios-development-environment 介绍 移动互联网时代,掌握 iOS 开发和安卓 ...
- mysql8.0修改密码
把密码设置为空:UPDATE mysql.user SET authentication_string='' WHERE user='root' and host='localhost'; 查看USE ...
- C#实现Bitmap旋转
原文链接 Rotate180FlipNone 指定不进行翻转的 180 度旋转.Rotate180FlipX 指定后接水平翻转的 180 度旋转.Rotate180FlipXY 指定后接水平翻转和垂直 ...
- holiday05
第五天 cat cat会一次性显示所有的内容,适合查看 内容较少 的文本文件 选项 含义 -b 对非空输出行编号 -n 对输出的所有行编号 more more每次只显示一页内容,适合于查看 内容较多 ...
- python菜鸟学习: 10. 函数的基本用法
# -*- coding: utf-8 -*-# 回参函数def test01(): return 0# 以元组返回参数def test02(): return 1, [1, 2, 3, 4, 5], ...