Hari ini saya menguji alat pemanfaatan bandwidth jaringan yang disebut Bandwhich di VM Ubuntu saya. Alat itu dikembangkan dalam bahasa pemrograman Rust , jadi saya mencoba menginstalnya menggunakan Cargo manajer paket. Di tengah proses kompilasi, saya menemukan kesalahan berikut:
Updating crates.io index Installing bandwhich v0.6.0 Compiling libc v0.2.66 error: linker `cc` not found | = note: No such file or directory (os error 2) error: aborting due to previous error error: failed to compile `bandwhich v0.6.0`, intermediate artifacts can be found at `/tmp/cargo-installrqSeTB` Caused by: could not compile `libc`. To learn more, run the command again with --verbose.
Seperti yang Anda lihat pada output di atas, Cargo tidak dapat menemukan program compiler cc untuk mengkompilasi aplikasi yang diberikan. Karena Rust belum menyertakan tautannya sendiri, Anda harus memiliki kompiler C seperti gcc
diinstal untuk bertindak sebagai penghubung.
Untuk menginstal gcc di Ubuntu, cukup jalankan:
$ sudo apt install build-essential
Jika Anda menggunakan OS Linux yang berbeda, lihat tautan berikut untuk menginstal alat pengembangan yang menyertakan aplikasi yang diperlukan, seperti kompiler GNU GCC C/C++, make, dan debugger, dll.
- Cara Memasang Alat Pengembangan Di Linux
Setelah menginstal gcc, kesalahan "linker cc not found
" hilang! Dan kemudian saya dapat menginstal aplikasi tanpa masalah.
Jika Anda masih mendapatkan kesalahan yang sama meskipun GCC sudah diinstal, instal cmake
dan coba lagi. Cmake tersedia di repositori resmi sebagian besar distribusi Linux.
Untuk menginstal Cmake di Arch Linux, aktifkan [Extra]
repositori dan jalankan:
$ sudo pacman -S cmake
Di Debian, Ubuntu, Linux Mint:
$ sudo apt install cmake
Di Fedora, RHEL, CentOS, AlmaLinux, dan Rocky Linux:
$ sudo dnf install cmake
Di openSUSE:
$ sudo zypper install cmake
Menginstal gcc memecahkan masalah bagi saya.
Pembaruan:
Di NixOS, masalah ini tidak akan terpecahkan bahkan setelah menginstal "GCC
" dan "make
". Seperti yang disebutkan dalam utas GitHub . ini , Anda harus mencoba ini dengan nix-shell , alih-alih nix-env .
Semoga berhasil!