Setup C++ & Visual Studio Code di 2019
Mungkin sudah tidak banyak yang mempelajari C/C++ kecuali di lingkungan akademisi yang memang setau saya memang masih diwajibkan tetapi mau tidak mau sudah pasti C/C++ masih menjadi backbone atau fondasi lunak dari semua infrastruktur IT yang ada sekarang.
Dalam perkembangan teknologi pemakaian prosesor multi-core sudah sangat umum dan merakyat (smartphone) dan bersamaan dengan itu dibutuhkan bahasa pemrograman yang secara “default” memang memanfaatkan hardware multi-core tersebut contoh bahasa pemrograman baru yang saya maksud adalah Rust dan Go.
Jika dilihat dari segi kecepatan pengeksekusian bahasa Rust dan Go tidak kalah dengan C/C++ hanya saja khusus untuk Rust dibutuhkan learning curve yang lebih banyak daripada jika anda mempelajari Go.
🔥 Lalu kenapa masih mempelajari bahasa berumur 30 tahun lebih seperti C/C++?
Jawabannya saya kira ada di mature-nya bahasa ini dan banyaknya resource yang bisa anda pelajari jika MULAI mempelajari C/C++dan saya kira bahasa ini tidak akan pernah mati meskipun sudah berumur 34 tahun (1985) dan kalaupun menghilang setidaknya mempunyai tempat tersendiri apalagi jika anda termasuk pemrogram perangkat keras maka sudah defacto bahwa C/C++ wajib anda pelajari.
Ok. saya tidak akan membicarakan learning C/C++ (which is nuts!) hanya saja di tahun 2019 dengan memakai Windows 10 pengaturan lingkungan untuk pengembang C/C++ lumayan agak ribet karena saya pribadi sangat menghindari editor seperti Visual Studio.
Setup
Ada beberapa persyaratan untuk OS Windows 10 seperti berikut
Perlu menjadi catatan bahwa Build Tools TIDAK menyertakan Visual Studio sehingga anda bebas saja memakai editor lain seperti Visual Studio Code, Atom untuk mengembangkan aplikasi C/C++.
Hanya saja dalam tulisan ini saya akan memakai Visual Studio Code karena ya…VSC is awesome! 😸
- Instal vcpkg
vcpkg secara sederhana adalah manajer paket untuk C/C++, hampir sama dengan npm-lah kalau di node.js. - Instal Visual Studio Code (VSC)
- Instal Microsoft C/C++ extension untuk VSC
Menurut saya belum sempurna banget dan pada saat tulisan ini dibuat masih dalam stage preview. - Instal Cmake
Cmake merupakan tool portabel umum untuk mem-build atau automasi task dalam konteks ini yaitu kompilasi maupun linking C/C++ di Windows.
—
vcpkg bisa digunakan untuk mencari dan menginstal paket C/C++ sehingga sangat memudahkan dalam mengatur depedensi paket
Untuk menginstal misalnya paket sdl2
maka perintahnya sangatlah mudah
vcpkg.exe install sdl2
kekurangan manajer paket ini mungkin (koreksi kalau saya salah) yaitu tidak adanya version locking dari paket dan mungkin memang sengaja di desain begitu sehingga programer mau tidak mau harus selalu mengupdate ke paket yang up-to-date.
💻 main.cpp
Ok, kita ambil contoh file main.cpp
seperti diatas yang isinya adalah membuat window dengan memakai paket sdl2
yang umum dipakai di pengembangan game.
Untuk mengkompilasi file main.cpp
sudah pasti akan mudah jika memakai Visual Studio dengan timbal balik semua konfigurasi dirahasiakan dari anda! tetapi jka dilakukan secara manual maka anda saya sarankan memakai cmake.
💻 CMakeLists.txt
Saya bukan ahli dalam memakai cmake tetapi menurut yang saya baca cmake bisa men-generate konfigurasi projek misalnya untuk Visual Studio dan anda memang perlu banyak membaca dokumentasi untuk memahami konfigurasi cmake. Silahkan googling atau duckduckgoing untuk mencari penjelasan konfigurasi diatas.
Option DCMAKE_TOOLCHAIN_FILE
bisa didapat dengan menjalankan
vcpkg.exe integrate install
kemudian dengan mudah kompilasi main.cpp
bisa dilakukan dengan asumsi main.cpp
dan CMakeLists.txt
pada root folder
mkdir build
cd build
cmake .. "-DCMAKE_TOOLCHAIN_FILE=E:/sdk/vcpkg/scripts/buildsystems/vcpkg.cmake"
cmake --build .
Hanya saja saya belum menemukan konfigurasi supaya secara otomatis pustaka
sdl2.dll
yang merupakan dependensimain.cpp
bisa dikopi ke keluaran pada saat proses build berlangsung.
🎁 Kode Sumber 🎁
Ok. Semoga cukup jelas.
Happy Learning!
Tentang Saya
Programer yang tidak terlalu bertendensi ke bahasa pemrograman tertentu, meskipun saya termasuk fans berat dari Node.js tetapi selama problem terselesaikan, ok saja kalau harus memakai teknologi lain — Github, Twitter
Sepertinya tepuk tangan 👏 pengganti LIKE bisa sampai 50, jadi kalau tepuk tangan atau clap cuman 1 akan kelihatan sangat aneh 😆 (Gak..maksud saya clap akan membantu supaya yang lain bisa lebih mudah menemukan artikel ini. Trims)