安装Rust

参考文档,指定安装目录和镜像配置。

rustc --version 检查是否安装成功。

构建程序

使用rustc编译运行

rustc

编译:rustc main.js

运行:

  • Windows:.\main.exemain
  • 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
  • .gitignorecargo 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项目的更多相关文章

  1. Google C++测试框架系列入门篇:第二章 开始一个新项目

    上一篇:Google C++测试框架系列入门篇:第一章 介绍:为什么使用GTest? 原始链接:Setting up a New Test Project 词汇表 版本号:v_0.1 开始一个新项目 ...

  2. Flutter入门教程(四)第一个flutter项目解析

    一.创建一个Flutter工程 1.1 命令行创建 首先我们找一个空目录用来专门存放flutter项目,然后在路径中直接输入cmd: 使用 flutter create <projectname ...

  3. node项目的基本构建流程或者打开一个node项目的流程

    1.  确立项目所需要的所有依赖.框架(比如bootstrap,vue,angular等) 2. 在项目的根目录下创建一个package.json文件,package.json文件是项目的最重要文件之 ...

  4. ASP.NET + MVC5 入门完整教程三 (上) ---第一个MVC项目

    https://blog.csdn.net/qq_21419015/article/details/80420815 第一个MVC应用程序 1创建MVC项目 打开VS ,File--新建--项目,选择 ...

  5. java学习入门之---使用idea创建第一个maven项目

    一.准备条件: 1.安装idea旗舰版 2.安装tomcat 二.打开idea开始创建 1.创建Project 2.选择项目类型为maven 3.输入组名和项目名 ---> 下一步 ----&g ...

  6. eclipse中创建一个maven项目

    1.什么是Maven Apache Maven 是一个项目管理和整合工具.基于工程对象模型(POM)的概念,通过一个中央信息管理模块,Maven 能够管理项目的构建.报告和文档. Maven工程结构和 ...

  7. Maven(一)如何用Eclipse创建一个Maven项目

    1.什么是Maven Apache Maven 是一个项目管理和整合工具.基于工程对象模型(POM)的概念,通过一个中央信息管理模块,Maven 能够管理项目的构建.报告和文档. Maven工程结构和 ...

  8. 基于Maven构建开发第一个Storm项目

    前面说过了Storm的测试项目,那么此时我们更想自己写一个小项目来练练手,首先我们自己的Windows系统上首先应该安装好maven,然后启动Eclipse for JavaEE版本,接下来开始建立项 ...

  9. Rust入门篇 (1)

    Rust入门篇 声明: 本文是在参考 The Rust Programming Language 和 Rust官方教程 中文版 写的. 个人学习用 再PS. 目录这东东果然是必须的... 找个时间生成 ...

  10. 5分钟APIG实战: 使用Rust语言快速构建API能力开放

    序言:Rust语言简介 参与过C/C++大型项目的同学可能都经历过因为Null Pointer.Memory Leak等问题“被” 加班了不知道多少个晚上.别沮丧,你不是一个人,Mozilla Fir ...

随机推荐

  1. @order(1)

    @order(num),数字表示加载顺序 1.AOP加载顺序(切面加载顺序) 2.配置类加载顺序

  2. 看K线学炒股(8.5)

    郑煤机,这只票之前我亏损拿着,昨日理性分析是要打开上涨空间了,毕竟下半年要挖煤,挖煤要煤机,业绩预期就不会差.好了,亏损票,昨日大涨,清了一些,今日大涨八个点清仓.既然分析是打开上涨空间了,那就应该是 ...

  3. 如何在 Visual Studio 中自定义 Docker 容器 和 使用 Docker Compose 为 Visual Studio 创建多容器应用

    https://learn.microsoft.com/zh-cn/visualstudio/containers/container-build?WT.mc_id=visualstudio_cont ...

  4. Spring UnitTest

    demo:https://files.cnblogs.com/files/netact/spring01.zip 首先说一下Spring IOC的运行机制,同过xml或者annotation()来将p ...

  5. SAP BPC全面预算及合并解决方案.pdf 电子版

    SAP BPC全面预算及合并解决方案.pdf 电子版 有需要的联系 wx :erpworld

  6. imputation-综述文章:关于网络推理的scRNA序列插补工具基准突出了高稀疏性水平下的性能缺陷

    文章题目: Benchmarking scRNA-seq imputation tools with respect to network inference highlights 中文题目: 关于网 ...

  7. Profiler中WaitForTargetFPS详解【转】

    WaitForTargetFPS 该参数一般出现在 CPU开销过低,且通过设定了目标帧率的情况下(Application.targetFrameRate).当上一帧低于目标帧率时,将会在本帧产生一个W ...

  8. hadoop克隆三台虚拟机安装JDK和hadoop并配置环境变量

    首先将模板虚拟机关机,进行对模板虚拟机的克隆. 选择完整克隆 克隆三台虚拟机. 注意虚拟机的移除与删除 打开hadoop102,修改ip地址与hostname 切换至root用户,或以root用户登录 ...

  9. JS篇(004)-js 是一门怎样的语言,它有什么特点?

    答案: 1.脚本语言.JavaScript 是一种解释型的脚本语言,C.C++等语言先编译后执行,而 JavaScript 是在程序的运行过程中逐行进行解释. 2.基于对象.JavaScript 是一 ...

  10. vscode提交修改的时候报错:无法推送 refs 到远端。您可以试着运行“拉取”功能,整合您的更改

    vscode提交修改的时候报错:无法推送 refs 到远端.您可以试着运行"拉取"功能,整合您的更改, git操作命令行 git pull origin yourbranch  - ...