参考文档:
http://doc.crates.io/guide.html
相当于maven/ant之于java, automake之于c, Cargo是rust的项目管理工具。用 Cargo 做4件事情:
1) 配置管理
2) 下载项目依赖
3) 调用编译器rustc编译,发布程序
4) 总之开发rust的一揽子解决方案
当你安装了rust, cargo就随之安装了。
$ cargo new hello_world --bin
$ cd hello_world
$ tree .
.
├── Cargo.toml
└── src
└── main.rs
1 directory, 2 files
编译一下,并运行之:
$ cargo build
$ ./target/debug/hello_world
Hello, world!
$ cargo run
Running `target/debug/hello_world`
$ cargo build --release
产生的程序:
target/release/hello_world
我在开发机器上(Ubuntu14.04)上编译的,现在发布到RHEL6服务器,然后运行:
[root@vm-repo ~]# ./hello_world
[root@vm-repo ~]# strings /lib64/libc.so.6 |grep GLIBC_
GLIBC_PRIVATE
wget -c http://ftp.gnu.org/gnu/libc/glibc-2.22.tar.gz
# tar zxf glibc-2.22.tar.gz
# cd glibc-2.22
# mkdir build
# cd build
# ../configure
# make -j4
# make install
...
checking for gawk... gawk
checking version of gawk... 3.1.7, ok
checking if gcc is sufficient to build libc... no
checking for nm... nm
configure: error:
*** These critical programs are missing or too old: as ld compiler
*** Check the INSTALL file for required versions.
看来RHEL6的gcc版本太低。需要升级gcc。太费劲,放弃。
# curl -f -L https://static.rust-lang.org/rustup.sh -O
# sh rustup.sh
[root@vm-repo experiment]# rustc --version
rustc 1.2.0 (082e47636 2015-08-03)
然后重新创建hello_world:
# cargo new hello_world --bin
# cd hello_world
# cargo build --release
生成的 target/release/hello_world 可以运行!
================================================
更多内容请详细阅读
http://doc.crates.io/guide.html