RustをUbuntuにインストールしてプログラムを走らせる
はじめに
Rust(ラスト)は、C言語、C++に代わるシステムプログラミング言語と言われています。OSや言語を記述するのに適した言語というわけです。
Windows上にLinux環境を構築する方法にWSLがあります。WSL(Windows Subsystem for Linux ) とは、Linuxのバイナリ実行ファイルをWindows 10およびWindows Server上で実行できるようにしたものです。本稿では、WSL上のUbuntu20.04にRustをインストールし、簡単なプログラムを実行するまでを紹介します。
参考URL
WSLでWindows上にUbuntu環境を構築する方法は、下記リンクの記事に詳しいので、よかったら参考にしてください。
LinuxとWindowsの欲張りな環境を手にする
Windows, macOSでのインストール方法などは下記リンクを参照ください。
RustをWindows/Ubuntu/macOSにインストールしてサンプルプログラムを走らせる
本稿は自身のブログから転載しました。
Rustのインストール
Ubuntuの場合は、まずCコンパイラ(gcc)をインストールします。
$ sudo apt install gcc
次にターミナルからcurlコマンドを実行してrustをインストールします。プロンプト”>”が表示されたら、「1」を入力します。
$ curl https://sh.rustup.rs -sSf | sh
info: downloading installer
Welcome to Rust!
< 略 >
1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
>1
ここで一旦、Ubuntuを終了し、起動しなおします。「exit」と入力し、スタートメニューからUbuntuを起動します。
Ubuntuの再起動が完了したところで、rust関連のコマンドが実行できることを確認します。すでにPATH環境変数の設定も実施されています。
$ rustc -V
rustc 1.51.0 (2fd73fabe 2021-03-23)
$ cargo -V
cargo 1.51.0 (43b129a20 2021-03-16)
Hello Worldを表示してみよう
任意の場所に「rust」フォルダを作成します。
次に、「cargo new プロジェクト名」でプロジェクトを作成します。下ではプロジェクト名を「show_os_ver」としました。
$ mkdir rust
$ cd rust
$ cargo new show_os_ver
Created binary (application) `show_os_ver` package
プロジェクトのディレクトリ構成をtreeコマンドで表示したのが下の図です。
$ sudo apt install tree
$ tree
.
└── show_os_ver
├── Cargo.toml
└── src
└── main.rs
show_os_ver/src/main.rsがソースコードです。
$ cd show_os_ver/src
$ cat main.rs
fn main() {
println!("Hello, world!");
}
すでに、「Hello World」を出力するプログラムがおかれているので、これをビルドして実行します。
cargo runコマンドが便利です。ビルドと実行を一気に行ってくれます。
$ cargo run
Compiling show_os_ver v0.1.0 (/home/linux/works/rust/show_os_ver)
Finished dev [unoptimized + debuginfo] target(s) in 0.17s
Running `/home/linux/works/rust/show_os_ver/target/debug/show_os_ver`
Hello, world!
OSのバージョンを表示してみる
ここまでではプログラムを何も作っていません。そこで、OSのバージョンを表示する簡単なプログラムを作ってみます。
エディタでmain.rsを編集します。
use std::process::Command;
fn main() {
let proc = Command::new("/usr/bin/cat")
.args(&["/etc/lsb-release"])
.output()
.expect("Failed to start `cat`");
println!("{}", String::from_utf8_lossy(&proc.stdout));
}
プログラムから
”/usr/bin/cat /etc/lsb-release”
を実行し、catから受け取った出力結果を表示します。lsb-releaseファイルは、Ubuntuのバージョンが記載されているテキストファイルです。
- let proc = Command::new の行でcatコマンドを実行します。
- .args でcatに与える引数を指定します。
- .output() でcatの実行完了を待つと同時に出力を受け取ります。
- .expect で例外処理を登録します。
- println!(“{}”,・・・); でcatの実行結果を表示します。
さっそく実行してみます。
$ cargo run
Compiling show_os_ver v0.1.0 (/home/linux/works/rust/show_os_ver)
Finished dev [unoptimized + debuginfo] target(s) in 0.24s
Running `/home/linux/works/rust/show_os_ver/target/debug/show_os_ver`
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.2 LTS"
OSのバージョンを表示することができました。
おわりに
macOSやWindowsから上記同様のことをやってみたい方は、下の記事をどうぞ!
RustをWindows/Ubuntu/macOSにインストールしてサンプルプログラムを走らせる
Author And Source
この問題について(RustをUbuntuにインストールしてプログラムを走らせる), 我々は、より多くの情報をここで見つけました https://qiita.com/seshat/items/80bc2c20761a547a3996著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .