Kompilasi C di Windows 10: Mudah Pakai GCC di Ubuntu Bash Kamu

Kompilasi C di Windows 10: Mudah Pakai GCC di Ubuntu Bash Kamu
Photo by Philip Oroni/Unsplash

Pernah nggak sih kamu ngerasa agak ribet pas mau kompilasi kode C di Windows? Mungkin kamu udah nyoba pakai MinGW, Cygwin, atau bahkan Visual Studio, tapi rasanya kok ada aja yang kurang pas atau settingannya suka bikin pusing. Nah, buat kamu yang suka tantangan dan pengen punya pengalaman ngoding C yang lebih smooth kayak di Linux tanpa harus ninggalin Windows kesayangan, ada satu cara jitu yang bakal bikin hidup kamu lebih mudah: pakai GCC di Ubuntu Bash lewat Windows Subsystem for Linux (WSL).

Ini bukan cuma sekadar trik biasa, lho. Dengan kombinasi ini, kamu bisa menikmati semua kemudahan dan kekuatan ekosistem Linux, termasuk compiler GCC yang udah jadi standar industri, langsung dari dalam Windows 10 atau 11 kamu. Jadi, nggak perlu lagi dual-boot atau pakai virtual machine yang berat dan makan banyak resource. Penasaran gimana caranya? Yuk, kita bedah tuntas!

Kenapa Sih Harus Pakai GCC di Ubuntu Bash Via WSL? Apa Untungnya?

Mungkin pertanyaan ini muncul di benak kamu: "Ribet banget nggak sih, Bang, Kak? Kenapa nggak pakai compiler bawaan Windows aja?" Oke, ini dia beberapa alasan kenapa setup ini worth it banget buat kamu coba, terutama buat para developer muda atau mahasiswa yang baru belajar C:

  1. Lingkungan Pengembangan yang Konsisten: Kalau nanti kamu kerja atau deploy aplikasi C kamu di server, kemungkinan besar server itu berbasis Linux. Dengan ngembangin di WSL, kamu udah membiasakan diri dengan lingkungan yang mirip. Ini ngurangin banget potensi "it works on my machine but not on the server" karena perbedaan compiler atau sistem operasi.
  2. GCC itu Standar Emas: GNU Compiler Collection (GCC) adalah compiler C/C++ yang paling populer dan paling banyak dipakai di dunia, terutama di lingkungan open-source. Menguasainya berarti kamu akrab dengan alat yang dipakai oleh jutaan developer lainnya.
  3. Akses ke Perkakas Linux Lengkap: Selain GCC, di Ubuntu Bash kamu juga dapat akses ke berbagai utility Linux powerful lainnya kayak make, gdb (debugger), git, dan banyak lagi package lain yang bisa diinstal via apt. Ini bikin alur kerja kamu makin efisien.
  4. Lebih Ringan dari Virtual Machine: WSL ini bukan virtual machine penuh. Dia memanfaatkan kernel Linux yang berjalan di atas Windows tanpa overhead yang besar. Jadi, jauh lebih ringan dan cepat daripada menjalankan Ubuntu di VirtualBox atau VMware.
  5. Integrasi dengan Windows yang Oke Punya: Kamu bisa ngakses file Windows dari WSL dan sebaliknya. Bahkan, bisa buka project WSL langsung di Visual Studio Code versi Windows tanpa masalah. Ini bikin transisi antar lingkungan jadi mulus banget.
  6. Meminimalisir Masalah Kompatibilitas: Kadang, ada beberapa library C/C++ yang didesain khusus buat lingkungan Linux dan agak susah di-porting ke Windows. Dengan WSL, masalah kayak gini bisa diminimalisir.

Gimana, udah mulai tertarik buat nyobain? Sip! Mari kita langsung gas ke langkah-langkahnya.

Persiapan Awal: Yang Wajib Kamu Punya

Sebelum kita mulai oprek-oprek, ada beberapa hal yang perlu kamu siapkan:

  • Windows 10 atau Windows 11: Pastikan OS kamu udah update paling baru. Untuk WSL2 (versi yang direkomendasikan), Windows 10 versi 2004 atau lebih tinggi (Build 19041+) atau Windows 11 sudah sangat cukup.
  • Koneksi Internet: Buat download Ubuntu dan package lainnya.
  • Akses Administrator: Kamu butuh hak akses administrator buat ngaktifin fitur WSL.

Udah siap semua? Lanjut!

Langkah 1: Mengaktifkan Windows Subsystem for Linux (WSL)

Ini adalah fondasi utama kita. Tanpa ini, nggak bakal bisa jalan.

  1. Buka PowerShell sebagai Administrator:

Klik kanan tombol Start, pilih "Windows PowerShell (Admin)" atau "Windows Terminal (Admin)". Ini penting banget karena kamu butuh hak administrator.

  1. Jalankan Perintah Instalasi WSL:

Di jendela PowerShell yang terbuka, ketik perintah berikut:

bash
    wsl --install

Perintah ini bakal otomatis ngaktifin fitur WSL dan Virtual Machine Platform, download kernel Linux terbaru, dan nginstal distribusi Ubuntu secara default. Gampang banget, kan?

Kalau kamu pengen nginstal distribusi Linux lain selain Ubuntu (misalnya Debian, Kali Linux, dll), kamu bisa cek daftar distribusinya dengan wsl --list --online dan instal dengan wsl --install -d. Tapi untuk tutorial ini, kita fokus ke Ubuntu aja ya, biar nggak pusing.

  1. Restart Komputer Kamu:

Setelah proses instalasi selesai, PowerShell bakal nyuruh kamu buat restart komputer. Wajib banget nih di-restart biar semua perubahannya aktif.

Langkah 2: Setup Awal Ubuntu Bash Kamu

Setelah restart, Ubuntu Bash kamu akan otomatis terbuka untuk pertama kalinya.

  1. Tunggu Proses Inisialisasi:

Pertama kali dibuka, Ubuntu akan melakukan beberapa proses inisialisasi. Tunggu aja sampai selesai.

  1. Buat Username dan Password:

Kamu akan diminta untuk membuat username dan password untuk akun Linux kamu. Ini bakal jadi akun default yang punya hak sudo (administrator di Linux). Ingat-ingat baik-baik password-nya ya, karena sering dipakai buat instal software atau perintah yang butuh hak akses khusus.

Enter new UNIX username: [ketikusernamekamu]
    New password: [ketikpasswordkamu]
    Retype new password: [ketikulangpassword_kamu]

Selamat! Kamu sekarang udah punya sistem Ubuntu Bash yang berjalan mulus di Windows kamu. Gimana, gampang banget kan?

Langkah 3: Menginstal GCC (GNU Compiler Collection) di Ubuntu Bash

Sekarang kita udah punya Ubuntu, waktunya nginstal senjata utama kita: GCC!

  1. Buka Ubuntu Bash Kamu:

Kamu bisa mencarinya di Start Menu dengan mengetik "Ubuntu" atau "Bash".

  1. Update Repository Paket Ubuntu:

Ini langkah penting sebelum nginstal apapun di Linux. Tujuannya buat ngasih tau sistem kamu daftar package terbaru yang tersedia.

bash
    sudo apt update

sudo itu artinya "SuperUser DO", jadi perintah ini bakal dijalankan dengan hak administrator. Kamu bakal diminta masukin password yang udah kamu buat sebelumnya.

  1. Upgrade Paket yang Sudah Terinstal (Opsional tapi Direkomendasikan):

Setelah apt update, kamu bisa juga nge-upgrade semua paket yang udah ada ke versi paling baru.

bash
    sudo apt upgrade -y

Opsi -y itu biar kamu nggak perlu ketik "y" lagi pas ditanya konfirmasi instalasi.

  1. Instal Build-Essential:

Nah, ini dia intinya! build-essential itu adalah sebuah meta-paket yang berisi semua perkakas dasar yang dibutuhkan buat ngompilasi software, termasuk GCC, G++, dan make.

bash
    sudo apt install build-essential -y

Tunggu sampai proses instalasi selesai. Ini mungkin makan waktu beberapa menit tergantung kecepatan internet kamu.

  1. Verifikasi Instalasi GCC:

Setelah selesai, yuk kita cek apakah GCC udah terinstal dengan benar.

bash
    gcc --version

Kalau muncul informasi versi GCC (misalnya gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0 atau yang serupa), berarti instalasinya sukses total! Keren!

Langkah 4: Ngoding C Pertama Kamu dan Kompilasi

Sekarang waktunya kita cobain GCC dengan program C sederhana.

  1. Buat File C Sederhana:

Di dalam terminal Ubuntu Bash kamu, kita akan buat file hello.c. Kamu bisa pakai editor teks kayak nano atau vi. Kita pakai nano aja ya, biar gampang buat pemula.

bash
    nano hello.c

Ini akan membuka editor nano. Ketik kode C berikut:

c
    #include 

Setelah selesai ngetik, simpan file dengan menekan Ctrl+O (Enter untuk konfirmasi nama file), lalu keluar dari nano dengan Ctrl+X.

  1. Kompilasi Program C Kamu:

Sekarang, di terminal Ubuntu Bash, kita kompilasi file hello.c tadi pakai GCC.

bash
    gcc hello.c -o hello

Perintah ini artinya: "Gunakan gcc untuk mengkompilasi hello.c dan hasilkan file executable dengan nama hello."

Kalau nggak ada pesan error, berarti kompilasinya sukses! Keren!

  1. Jalankan Program Kamu:

Untuk menjalankan file executable yang udah kita buat, ketik:

bash
    ./hello

Kamu akan melihat outputnya:

Halo dunia! Ini program C pertama saya di WSL menggunakan GCC.
    Mantap jiwa!

Gimana? Berhasil kan? Rasanya kayak punya terminal Linux beneran di Windows, padahal ini cuma di dalam Bash.

Langkah 5: Integrasi dengan Visual Studio Code (VS Code) – Bikin Workflow Makin Mulus

Buat kamu yang udah terbiasa ngoding pakai VS Code, kabar baiknya adalah integrasi VS Code dengan WSL ini udah super mulus. Kamu bisa edit file di WSL, pakai terminal WSL, dan bahkan debug di WSL, semuanya dari jendela VS Code di Windows kamu.

  1. Instal Ekstensi "Remote - WSL":

Buka VS Code di Windows kamu. Pergi ke tab Extensions (Ctrl+Shift+X), lalu cari dan instal ekstensi bernama "Remote - WSL" oleh Microsoft.

  1. Buka Folder WSL di VS Code:

Setelah ekstensinya terinstal, kamu bisa: * Dari terminal Ubuntu Bash, ketik code . (titik itu artinya "folder saat ini"). Ini bakal otomatis buka VS Code di Windows dan ngakses folder WSL kamu. * Atau, di VS Code, tekan Ctrl+Shift+P (atau F1), ketik Remote-WSL: New Window atau Remote-WSL: Open Folder in WSL..., lalu pilih folder di sistem file Linux kamu.

VS Code akan otomatis terhubung ke WSL. Kamu bakal lihat di kiri bawah VS Code ada indikator WSL: Ubuntu (atau distribusi Linux lain yang kamu pakai). Ini menandakan bahwa VS Code sekarang beroperasi di dalam lingkungan WSL.

  1. Manfaatkan Terminal Terintegrasi VS Code:

Di VS Code, kamu bisa buka terminal baru (Terminal > New Terminal atau Ctrl+ ). Terminal ini akan otomatis terhubung ke Ubuntu Bash kamu! Jadi, kamu bisa kompilasi dan jalankan program C kamu langsung dari situ.

  1. Debugging dengan GDB (Gnu Debugger):

Debugging adalah bagian penting dari ngoding. Di WSL, kamu bisa pakai gdb (Gnu Debugger). * Pertama, pastikan gdb terinstal: sudo apt install gdb -y di Bash. * Saat kompilasi, tambahkan flag -g untuk menyertakan informasi debugging: gcc -g hello.c -o hello. * Kamu bisa mengkonfigurasi launch.json di VS Code untuk me-debug program C/C++ kamu yang berjalan di WSL. Ini memungkinkan kamu set breakpoint, melangkah baris per baris, dan ngeliat nilai variabel.

Tips & Trik Tambahan buat Kamu:

  • Mengakses File Windows dari WSL:

Kamu bisa mengakses drive Windows kamu dari dalam Ubuntu Bash. Misalnya, drive C: Windows kamu akan ada di /mnt/c/. Jadi, kalau mau ke folder D:\MyProjects, kamu bisa cd /mnt/d/MyProjects. Gampang, kan?

  • Mengakses File WSL dari Windows:

Kalau kamu pengen ngakses file yang ada di sistem Linux WSL kamu dari Windows Explorer, kamu bisa buka Ubuntu Bash, lalu ketik explorer.exe . (dengan titik). Ini bakal membuka Windows Explorer langsung ke folder Linux tempat kamu berada. Atau, di Windows Explorer, ketik \\wsl.localhost\Ubuntu\ di address bar.

  • Memperbarui WSL dan Ubuntu:

Sama kayak Windows, WSL dan distribusi Linux kamu juga perlu di-update secara berkala. * Untuk WSL itu sendiri: Buka PowerShell (Admin) dan jalankan wsl --update. * Untuk Ubuntu: Buka Ubuntu Bash dan jalankan sudo apt update && sudo apt upgrade -y.

  • Menghilangkan Masalah Permissions (Hak Akses):

Kadang, saat kamu coba ngedit file yang ada di drive Windows dari dalam WSL, kamu bisa aja ngadepin masalah hak akses. Ini karena sistem permission Linux dan Windows itu beda. Sebisa mungkin, kerjakan project kamu di dalam sistem file WSL (misalnya di folder home kamu ~/projects) untuk menghindari masalah ini, terutama saat ngoding C. Kalau memang harus di drive Windows, pastikan kamu punya hak tulis yang cukup.

  • Menggunakan Alias untuk Perintah Cepat:

Kalau ada perintah yang sering kamu pakai, kamu bisa buat alias di file ~/.bashrc kamu. Misalnya, buat kompilasi C:

bash
    echo "alias compilec='gcc -Wall -Wextra -std=c11 -o'" >> ~/.bashrc
    source ~/.bashrc

Nanti, kamu bisa pakai compilec myprogram myprogram.c` (outputname sourcefile). Ini opsional, tapi bisa bikin workflow kamu lebih cepat.

Kenapa Setup Ini Penting Buat Masa Depanmu?

Menguasai kompilasi C di lingkungan Linux melalui WSL itu bukan cuma sekadar nyelesain tugas kuliah. Ini adalah skill yang sangat berharga di dunia profesional. Kamu jadi terbiasa dengan ekosistem yang banyak dipakai di server, embedded systems, dan berbagai industri lainnya. Kamu juga jadi lebih fleksibel karena bisa ngembangin aplikasi lintas platform dengan lebih mudah.

Bayangin aja, kamu bisa ngembangin program C yang kompleks, pakai library-library Linux, dan debugging dengan alat yang sama kayak developer kelas dunia, semuanya dari laptop Windows kamu yang nyaman. Ini adalah jembatan yang sempurna antara kemudahan penggunaan Windows dan kekuatan serta fleksibilitas Linux.

Siap Menjelajah Dunia C dengan Lebih Powerful?

Jadi, setelah semua penjelasan ini, kamu pasti udah punya gambaran yang jelas gimana mudahnya ngoding dan kompilasi C di Windows 10/11 pakai GCC via Ubuntu Bash di WSL. Ini adalah kombinasi maut yang bakal ningkatin produktivitas dan pengalaman ngoding kamu secara drastis.

Nggak perlu lagi pusing sama setup compiler yang ribet, atau galau antara Windows dan Linux. Dengan WSL, kamu dapat yang terbaik dari kedua dunia. Jadi, tunggu apa lagi? Langsung aja coba langkah-langkah di atas dan rasakan sendiri bedanya. Selamat ngoding, Bro/Sis! Semoga program-program C kamu makin lancar jaya!

Read more