Segítség C++-fordításhoz Ubuntuhoz haszonló rendszerekre

  1. Első lépésként a következő parancs segítségével telepítsd a fordítót és a hozzá tartozó könyvtárakat és függőségeket:
    sudo apt-get install build-essential.
  2. Ezután, ha szükséges, telepíts valamilyen szövegszerkesztőt vagy fejlesztői környezetet. Ezekhez ajánlásokat a lap alján találsz. A programokat a sudo apt-get install CSOMAGNÉV paranccsal telepítheted.
  3. Miután egy mappában elkészítetted a C++ forrásfájlokat, a g++ CPP-FÁJLOK paranccsal tudod őket lefordítani. Pl. ha a programod a main.cpp, matrix.h, matrix.cpp, menu.h, menu.cpp fájlokból áll, akkor ezt g++ main.cpp matrix.cpp menu.cpp paranccsal fordíthatod le. Csak a .cpp fájlokat kell megadni a fordítónak, a .h fájlok megadása gondot is okozhat.

Tanácsok a fordításhoz

Az előadás honlapján számos hasznos tanácsot találtok a fordítással kapcsolatban, de alább én is leírok néhányat.

  • A fenti fordítás eredménye egy a.out nevű futtatható fájl lesz, melyet az őt tartalmazó mappából a ./a.out paranccsal indíthatsz el. Ha más nevet szeretnél adni a programodnak, azt a fordító számára a -o kapcsoló után kell megadni, pl. így: g++ CPP-FÁJLOK -o ehakod. Ekkor a futtatható állomány neve ehakod lesz (kiterjesztés nélkül), tehát a ./ehakod beírásával indíthatod el.
  • A -Wall kapcsoló megadásával a fordító számos lehetséges hibára vagy veszélyes helyzetre figyelmeztet, amit egyébként nem tenne. Hasznos ezt bekapcsolni, mert segít idejekorán kijavítani a kisebb hibákat.
  • Ha szeretnénk használni a C++11 szabvány lehetőségeit, a fordító számára a -std=c++0x vagy -std=c++11 kapcsolót kell megadnunk.

Ajánlott szövegszerkesztők terminálra

  • MCEdit (csomag: mc, indítás: mcedit) - szintaxiskiemelés, automatikus behúzás, DOS-ra emlékeztető menürendszer és vezérlés
  • nano (csomag: nano, indítás: nano) - némi szintaxiskiemelés akad benne
  • vim - elég nehézkes megtanulni, rutinosabb Linuxosoknak ajánlott

Ajánlott grafikus szövegszerkesztők

  • GEdit (alapértelmezett Ubuntu szövegszerkesztő) - jó szintaxiskiemelés, automatikus behúzás, minimális beépített fordítási lehetőség
  • Geany (csomag: geany) - szintaxiskiemelés, automatikus behúzás, testre szabható, beépített fordítás, terminál és egyéb nyalánkságok, függvény- és típusböngésző a bal oldalon
  • MEdit (csomag: medit) - jól testre szabható, de telepítés után rá kell szánni némi időt
  • Kate (KDE asztalhoz, csomag: kate) - hasonlólehetőségek, mint a Geany-ben, csak GTK helyett KDE-re épül

Elérhető fejlesztőkörnyezetek

A nagyobb fejlesztőkörnyezetekre a nehezebb használhatóság és átláthatóság, egyéni projektformátumok és sok más dolog jellemző, ami ebben a félévben a legtöbbeket még csak akadályozza. Nem ajánlom ilyen fejlesztőeszközök használatát, de ha valaki mégis ilyet használna, itt felsorolom azokat, amelyeket én ismerek.

  • QtCreator (csomag: qtcreator)
  • Eclipse (csomag: eclipse)
  • KDevelop (KDE asztalhoz, csomag: kdevelop)
  • CodeBlocks (csomag: codeblocks