Topik ini menyiapkan lingkungan kerja Rust yang lengkap: pemasangan rantai alat lewat rustup, pembuatan proyek pertama lewat Cargo, dan pengaturan editor dengan rust-analyzer. Setelah topik ini selesai, perintah cargo dapat dipakai untuk membuat, memeriksa, dan menjalankan program Rust pada komputer sendiri, sementara editor menampilkan error kompilasi secara langsung saat kode diketik.
Instalasi dengan rustup#
rustup adalah pemasang sekaligus pengelola toolchain (rantai alat) resmi Rust. Sekali terpasang, rustup menyediakan rustc, cargo, rustfmt, dan clippy dalam satu kanal, serta mengelola banyak versi compiler pada komputer yang sama. Pergantian antara kanal stable, beta, dan nightly juga ditangani rustup tanpa memasang ulang dari awal. Kanal stable menjadi sasaran utama jalur ini karena seluruh fitur yang dibahas sudah stabil.
Pada Linux dan macOS, pemasangan dilakukan dengan skrip resmi berikut.
# tidak-dijalankan
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shSkrip tersebut mengunduh komponen ke direktori ~/.rustup dan menaruh berkas executable di ~/.cargo/bin. Skrip juga menambahkan ~/.cargo/bin ke dalam PATH melalui baris pada berkas .profile sehingga perintah rustc dan cargo dapat ditemukan pada terminal baru. Pengguna Windows memasang rustup lewat berkas rustup-init.exe dari halaman resmi yang sama, lalu memakai PowerShell atau cmd untuk perintah-perintah selanjutnya.
Setelah pemasangan selesai, pastikan ketiga perintah inti dapat dijalankan.
# pastikan rantai alat Rust berada di PATH sesi shell ini
export PATH="$HOME/.cargo/bin:$PATH"
rustup --version
rustc --version
cargo --versionrustup 1.29.2 (d8c92c676 2026-10-21)
info: This is the version for the rustup toolchain manager, not the rustc compiler.
info: the currently active `rustc` version is `rustc 1.99.1 (58cf8f9c3 2026-10-13)`
rustc 1.99.1 (58cf8f9c3 2026-10-13)
cargo 1.99.1 (5f94df478 2026-08-27)Nomor versi pada keluaran di atas mengikuti versi yang terpasang sehingga isinya dapat berbeda. Dua baris info dari rustup membedakan versi pengelola toolchain dari versi compiler yang sedang aktif. Kehadiran ketiga nomor versi menandakan pemasangan berhasil dan rantai alat siap dipakai.
Pembaruan rutin dilakukan dengan rustup update, sedangkan rustup default stable mengatur kanal stable sebagai toolchain bawaan. Kedua perintah mengubah instalasi pada komputer sehingga tidak dijalankan pada contoh-contoh di jalur ini. Kanal stable diperbarui setiap enam pekan mengikuti rilis compiler.
Proyek pertama dengan Cargo#
Cargo adalah sistem build sekaligus pengelola paket Rust. Cargo membuat struktur proyek, mengompilasi, menjalankan pengujian, dan mengunduh crate (paket pustaka Rust) dari crates.io. Hampir semua proyek Rust nyata dibangun di atas Cargo, sehingga memulai dengan cargo new merupakan kebiasaan yang tepat sejak awal.
Buat proyek pertama bernama halo dari direktori kerja.
# pastikan rantai alat Rust berada di PATH sesi shell ini
export PATH="$HOME/.cargo/bin:$PATH"
cargo new halo Creating binary (application) `halo` package
note: see more `Cargo.toml` keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.htmlPerintah tersebut menghasilkan struktur direktori berikut.
halo/
├── Cargo.toml
└── src/
└── main.rsDirektori src menampung seluruh kode sumber, sedangkan Cargo.toml adalah manifest proyek yang mencatat identitas paket beserta dependensinya. Isi manifest hasil cargo new tampak seperti ini.
[package]
name = "halo"
version = "0.1.0"
edition = "2024"
[dependencies]Bagian [package] menyimpan nama, versi, dan edisi bahasa proyek. Nilai edition yang tertulis bergantung pada versi Cargo yang membangun proyek, misalnya "2021" atau "2024". Bagian [dependencies] masih kosong dan akan diisi daftar crate ketika proyek membutuhkan pustaka eksternal.
Berkas src/main.rs berisi program sapaan yang siap dijalankan.
fn main() {
println!("Hello, world!");
}Hello, world!Fungsi main adalah titik masuk program, sedangkan println! adalah macro (pembangkit kode pada waktu kompilasi) yang mencetak satu baris teks ke keluaran standar. Tanda seru setelah nama macro membedakannya dari pemanggilan fungsi biasa. Penulisan kode Rust dibahas bertahap pada modul Dasar Bahasa, jadi cukup kenali bentuknya pada tahap ini.
Jalankan program tersebut melalui Cargo.
# pastikan rantai alat Rust berada di PATH sesi shell ini
export PATH="$HOME/.cargo/bin:$PATH"
cd halo
cargo run --quietHello, world!Perintah cargo run mengompilasi proyek terlebih dahulu, lalu menjalankan berkas biner hasilnya. Tanpa --quiet, Cargo juga mencetak baris status seperti Compiling, Finished, dan Running sebelum keluaran program muncul. Opsi --quiet dipakai pada contoh-contoh di jalur ini agar keluaran yang ditampilkan hanya milik program.
Perintah Cargo untuk siklus kerja#
Siklus kerja harian bertumpu pada empat perintah. cargo check memeriksa kesalahan tanpa menghasilkan berkas biner sehingga paling cepat selesai. cargo build mengompilasi proyek ke mode debug dengan hasil di target/debug. cargo run menggabungkan kompilasi dan eksekusi dalam satu perintah. cargo build --release menghasilkan biner teroptimasi di target/release dengan waktu kompilasi yang lebih lama.
Perintah berikut menjalankan tiga tahap pertama secara berurutan di dalam proyek halo.
# pastikan rantai alat Rust berada di PATH sesi shell ini
export PATH="$HOME/.cargo/bin:$PATH"
# periksa tipe tanpa membangun berkas biner
cargo check --quiet
# bangun berkas biner mode debug
cargo build --quiet
# jalankan berkas biner secara langsung
./target/debug/haloHello, world!Dua perintah pertama tidak mencetak apa pun karena --quiet menyembunyikan baris status dan keduanya memang berhasil. Perintah ketiga memperlihatkan bahwa cargo build meninggalkan berkas biner bernama halo di dalam target/debug, dan berkas itu dapat dijalankan ulang tanpa memanggil Cargo lagi. Mode debug menjadi bawaan karena proses kompilasinya cepat, sedangkan mode release baru dibutuhkan ketika mengukur kinerja atau membangun untuk pengguna akhir.
Tiga perintah pelengkap menutup siklus kerja. cargo fmt memformat ulang kode sesuai gaya resmi rustfmt, cargo clippy memeriksa pola kode yang lazim keliru, dan cargo test menjalankan pengujian proyek. Ketiganya menyatu pada Cargo sehingga tidak perlu perkakas terpisah.
Editor dengan rust-analyzer#
rust-analyzer adalah server bahasa untuk Rust yang mengikuti protokol Language Server Protocol (LSP). Editor yang mendukung LSP memakai rust-analyzer untuk memberi penyelesaian kode, penandaan error saat kode diketik, lompatan ke definisi, penggantian nama yang aman, serta pemformatan otomatis memakai rustfmt. Saran perbaikan dari clippy juga dapat tampil langsung sebagai penanda pada editor.
Pada Visual Studio Code, pasang ekstensi bernama rust-analyzer melalui panel ekstensi, lalu buka direktori proyek halo. Ekstensi umumnya mengunduh salinan rust-analyzer sendiri pada pemakaian pertama. Editor lain seperti Neovim, Emacs, dan Helix terhubung ke rust-analyzer melalui dukungan LSP bawaan atau plugin komunitas masing-masing.
rust-analyzer juga tersedia sebagai komponen rustup untuk pengaturan manual.
# tidak-dijalankan
rustup component add rust-analyzerSetelah rust-analyzer aktif, error kompilasi muncul sebagai penanda pada editor tanpa perintah apa pun, dan penyimpanan berkas menjadi pemicu pemeriksaan. Kombinasi editor yang responsif dengan cargo check yang cepat membuat siklus umpan balik saat belajar menjadi pendek. Pengaturan seperti ini menjadi dasar penulisan kode pada seluruh jalur.
Kesalahan umum#
- Menjalankan cargo dari luar direktori proyek. Cargo mencari
Cargo.tomlpada direktori kerja dan seluruh induknya, lalu berhenti dengan error apabila berkas itu tidak ditemukan. Penyebabnya biasanya lupa berpindah direktori setelah membuat proyek. Perbaikannya adalah menjalankancd haloterlebih dahulu agar perintah cargo berada di dalam proyek. - Menyunting berkas di dalam
target/. Direktori tersebut berisi hasil build yang ditimpa pada setiap kompilasi, sehingga suntingan apa pun di dalamnya hilang. Perbaikannya adalah menyunting hanya berkas padasrc/danCargo.toml, serta menandaitarget/agar diabaikan editor. - Terminal lama setelah pemasangan rustup. Perintah
cargotidak ditemukan karena PATH pada terminal tersebut belum memuat~/.cargo/bin. Perbaikannya adalah menjalankansource ~/.cargo/envatau membuka terminal baru setelah pemasangan selesai.
Ringkasan#
- rustup memasang dan mengelola rantai alat Rust, yaitu rustc, cargo, rustfmt, dan clippy, dengan kanal stable sebagai pilihan utama untuk belajar.
cargo newmembuat proyek berisiCargo.tomldansrc/main.rs, lalucargo runmengompilasi sekaligus menjalankan programnya.cargo check,cargo build, dancargo runmembentuk siklus kerja harian, dengan hasil build berada ditarget/debug.- rust-analyzer menghadirkan penyelesaian kode dan diagnosis error langsung di editor melalui protokol LSP.
Referensi#
- Installation — The Rust Project — Bab buku resmi tentang pemasangan rustup pada setiap sistem operasi.
- Hello, Cargo! — The Rust Project — Bab buku resmi yang memperkenalkan cargo new, cargo build, dan cargo run.
- The Cargo Book — The Rust Project — Dokumentasi lengkap Cargo yang mencakup manifest, perintah harian, dan pengelolaan dependensi.
- rustup — The Rust Project — Dokumentasi pengelola toolchain rustup beserta komponen dan kanalnya.
- rust-analyzer — rust-analyzer.github.io — Situs resmi server bahasa rust-analyzer beserta petunjuk pemasangan per editor.