Rust <0>:源代码组织,Cargo 入门
2024-10-21 16:14:28
Rust 源代码组织,使用配套的 Cargo 工具,其功能强大,程序员可摆脱 C/C++ 中需要自行维护 make、cmake 之类配置的工作量。
初始化一个项目:
cargo new --bin hello_world
指定 --bin 选项代表创建的是一个直接可执行的二进制项目,否则会生成一个库项目。
执行 cargo run && cargo run --release 之后,项目目录结构如下:
<fh@z:~/projects/hello_world>
zsh/ (git)-[master]-% tree
.
├── Cargo.lock
├── Cargo.toml
├── src
│ └── main.rs
└── target
├── debug
│ ├── build
│ ├── deps
│ │ └── hello_world-f745b285e01df5ca
│ ├── examples
│ ├── hello_world
│ ├── hello_world.d
│ ├── incremental
│ └── native
└── release
├── build
├── deps
│ └── hello_world-7399f171987fdf9d
├── examples
├── hello_world
├── hello_world.d
├── incremental
└── native
生成的二进制文件位于项目路径下的 target/debug 或 target/release 子目录中,--release 指生成编译优化版的二进制文件,类似于 C 语言开启 -O2 优化选项。
其中 Cargo.toml 是 Cargo 用来管理项目结构的配置文件,其初始内容如下:
<fh@z:~/projects/hello_world>
zsh/ (git)-[master]-% cat Cargo.toml
[package]
name = "hello_world"
version = "0.1.0"
authors = ["kt <kt@kissos.org>"] [dependencies]
____
注:rust 生成的最终可执行文件,都是无外部依赖的静态编译结果。
最新文章
- 在 MAC OS X 安装 ADB (Android调试桥)
- Android 中Thread,Handler,Loop学习
- c#查看电脑内存
- Android 使用存放在存assets文件夹下的SQLite数据库
- TempFile模块
- Java不走弯路教程(5.Client-Server模式(2)-Client)
- CPU、GPU、CUDA、cuDNN
- vue修改框架样式/deep/
- scrapy中css选择器初识
- 【DWM1000】 code 解密6一TAG 状态机第一步
- mac os使用迁移助手之后运行php报:dyld相关错误,错误排错流程分析
- Eclipse导入jdk的源码
- iOS 开发笔记-NSURLConnection的使用
- 【做题】CF119D. String Transformation——KMP
- python中configparser模块的使用
- ERP渠道信息的修改和渠道联系记录(二十三)
- PE Header and Export Table for Delphi
- Tomcat之如何使用Nginx进行集群部署
- Django入门与实践-第20章:QuerySets(查询结果集)(完结)
- oracle 建立表空间和用户
热门文章
- appium常见问题11_小米手机初次启动app,报错255“Requires permission android.permission.WRITE_SECURE_SETTINGS”
- Android深度探索-卷1第三章心得体会
- QTP read or write XML file
- 深入理解javascript原型和闭包(3)——prototype原型 (转载)
- 【题解】小X的AK计划
- 【题解】Beads
- SpringBoot-技术专区-实战方案-应用监控线程池
- ios开发之UIView和UIViewController
- JS的一些日常
- 【串线篇】SQL映射文件EmployeeDao.xml事项