Tartalomjegyzék
A CodeBlocks beüzemelése
- Szerző: Sallai András
- Copyright © Sallai András, 2011, 2016, 2020
- Licenc: GNU Free Documentation License 1.3
- Web: https://szit.hu
Bevezetés
Ez a leírás a CodeBlocks beüzemeléséről szól, wxWidgets programozói könyvtár és wxSmith vizuális fejlesztő kiterjesztésével.
A wxSmith a CodeBlocks egy kiterjesztése, amihez szükség van a wxWidgets, C++ programozói könyvtárra. Megnézzük, hogyan kell telepíteni a CodeBlocks mellé a wxWdigets programozói könyvtárat, Windowson és Debian GNU/Linuxon.
Beszerzés
Windows
CodeBlocks fejlesztői környezet
Látogassuk meg a weboldalt:
Válasszuk „Downloads” menüpontot:
Weblapon ehhez hasonlót kell lássunk:
Download the binary release
Kattintás után, következő binárisok tölthető le:
codeblocks-20.03-setup.exe codeblocks-20.03-setup-nonadmin.exe codeblocks-20.03-nosetup.zip codeblocks-20.03mingw-setup.exe codeblocks-20.03mingw-nosetup.zip codeblocks-20.03-32bit-setup.exe codeblocks-20.03-32bit-setup-nonadmin.exe codeblocks-20.03-32bit-nosetup.zip codeblocks-20.03mingw-32bit-setup.exe codeblocks-20.03mingw-32bit-nosetup.zip
Válasszuk a codeblocks-20.03mingw-setup.exe csomagot. Az első csomagot csak akkor válasszuk ha telepítve van MinGW és tudjuk mit csinálunk.
wxWidgets C++ könyvtárak
Két lehetőségünk van. Vagy forrásból tesszük fel, vagy már előre lefordított binárisból. Az utóbbi kényelmesebb lehet. Ha bináris mellett döntünk csak le kell szednünk a wxPack csomagot és telepítenünk. A wxPack esetén válasszuk a „Latest Version (wxWidgets v2.8.12)” verziót.
- https://www.wxwidgets.org (forrás és bináris)
Ha forrásból szeretnénk feltelepíteni több formátum is rendelkezésre áll. Windowsos rendszer esetén nekünk a wxMSW formátumra van szükségünk ezt töltsük le.
Telepítés
Windows
CodeBlocks telepítése
Telepítjük a codeblocks-10.05mingw-setup.exe csomagot szokásos kattintgatással.
Alapesetben a CodeBlocks a következő helyre települ:
c:\Program Files\CodeBlocks
wxWidgets telepítése
Ha a wxPack bináris csomagot választottuk, akkor csak kattintgatással telepítenünk kell.
Ha forrást választottuk, telepítjük a wxMSW-2.8.9-Setup.exe csomagot a kattintgatással.
Alapesetben a wxWidgets a c:\wxWidgets-2.8.9 könyvtárba telepszik.
Ez csak forrás, most le kell fordítani. Ehhez szükségünk lesz a CodeBlocksal együtt települt MinGW-re. Telepítés követően ez a könyvtár nincs útvonalban (PATH), útvonalba kell tennünk (hogy a mingw32-make parancsot bárhonnan futtathassuk).
A könyvtár amit útvonalba kell tennünk itt található:
C:\Program Files\CodeBlocks\MinGW\bin
Ennek módja: Vezérlőpult → Rendszer → Speciális → Környezeti változók → Rendszerváltozók → PATH
A wxWidgets fordítása: „Start” menü → „Futtatás” → „cmd”
cd \ cd wxWidgets-2.8.9\build\msw mingw32-make -f makefile.gcc BUILD=debug UNICODE=1 SHARED=1 MONOLITHIC=1 clean mingw32-make -f makefile.gcc BUILD=debug UNICODE=1 SHARED=1 MONOLITHIC=1 mingw32-make -f makefile.gcc BUILD=release UNICODE=1 SHARED=1 MONOLITHIC=1
A két utolsó lépés 40 percig is eltarthat.
Debian GNU/Linux 10
CodeBlocks fejlesztői környezet
Telepítés:
apt install codeblocks
wxWidgets C++ könyvtárak
apt-get install libwxbase3.0-0 libwxbase3.0-0-dbg libwxbase3.0-dev apt-get install libwxgtk3.0-0 libwxgtk3.0-0-dbg libwxgtk3.0-dev apt-get install wx3.0-headers wx3.0-i18n wx-common
A wxSmith plugin a codeblocks-contrib csomagban található, amely nem telepszik automatikusan:
apt-get install codeblocks-contrib
Használat
Használat Windows, Linux rendszeren
Először be kell állítanunk a CodeBlocksban, hol találjuk a wxWidgets könyvtárakat. Be lehetne állítani projektben is, de akkor ha átvisszük egy másik gépre a forrást (a projektet), ott nem biztos, hogy lefordul, ha más a wxWidgets útvonala. Ezért a CodeBlockban globális változóban állítom be a wxWidgets elérési útját.
- Settings → Global varibales … →
- Current Variable: wx
- Builtin fileds base: c:\wxWidgets-2.8.9
A Current Variable értékét állítsuk be wx-re. Ha még nem lenne wx változó, akkor hozzuk létre a „New” nyomógombbal.
(Tapasztalat: Ha a c:\wxWidgets-2.8.10\ könyvtárban fordítottam le a a wxWidgetset, akkor más könyvtárba másolva nem működik. A wxWidgets alapú program fordításakor hibaüzenetet kapunk.)
Most már készíthetünk projektet.
wxWidgets projekt készítése
- File → New → Projekt
Kiválasztom: wxWidgets Project
- Go
A projekt varászló ugrik elénk.
- Az első képernyőn csak tájékoztató, kattintsunk a „Next” gombra.
- Válasszuk ki a wxWidgets 3.0.x verziót, ha nem az lenne kijelölve. „Next” gomb.
- Adjuk meg mi lesz a projekt neve, hol tároljuk azt.
- Elég ha a projekt nevét és helyét megadjuk (felső két mező)
- „Next” gomb
- Tulajdonos adatai ha szükséges. „Next” gomb.
- Kiválasztjuk a wxSmith vizuális fejlesztő eszközt és megadjuk, hogy Frame alapú programot akarunk:
- Preferred GUI Builder: wxSmith
- Application Type: Frame Based
- „Next” gomb;
- Ha beállítottuk a wxwidgets könyvtár helyét globális változóban, akkor itt megmaradhat a $(#wx). „Next” gomb.
- Compiler alapértelmezetten „GNU GCC compiler” és hagyjuk így, hacsak nem tudjuk mit csinálunk.
- Legyen bepipálva a 'Create „Debug” configuration' és a 'Create „Release” configuration'.
- wxWidgets library settings:
- Use wxWidgets DLL - bejelölve
- wxWidgets is built as a monolithic library - bejelölve
- enable Unicode - bejelölve
- Minden más hagyjunk nem bejelölve. „Next” gomb.
Ha mindent jól csináltuk a vizuális fejlesztői felület ugrik elénk.
Megjegyzés: Ha projektbe mentjük el az wxWidgets útvonalát, más rendszeren esetleg nem fog lefordulni a projekt!
A wxwidgets használatához segítség: wxwidgets
Ékezetes használat
Windows XP rendszeren, a CodeBlocks és a wxWidgets rendszer együtt használva gondot okoz ha magyar ékezetes karaktereket használunk például a komponensek felirataiban. A hibaüzenet így néz ki:
.. |converting to execution character set: Illegal byte sequence|
Ezt egy egyszerű beállítással kivédhetjük:
Settings -> Compiler and debugger ... -> Other options: -finput-charset=iso-8859-2
Persze az igazi megoldás az, ha eleve angol nyelvűre írjuk meg a programot, használjuk a gettext rendszert, majd lefordítjuk magyarra. Az így elkészült program eleve alapból két nyelvű lesz, és fordítható bármely más nyelvre.
Szögletes bezáró zárójel
Magyar kiosztású billentyűzeten a szögletes bezáró zárójel nem üthető le telepítés után. Egy mozdulattal törölhetjük a beállítást:
Settings -> Editor ... -> Keyboard shortcuts -> Commands: -> Search -> Goto function...
A „Remove” gombra kattintva töröljük a billentyűkombinációt.
CodeBlocks pluginek
A CodeBlocks pluginjairól találunk információt itt:
Készülőben van egy Dev-Pack plugin is.
Megjegyzés
Teljesítménybeli gondok miatt nem sikerült monolitikus wxWidgets-et fordítani. Így a MONOLITHIC=0 beállítással fordítottam. wxWidgets-2.8.12. Ekkor a CodeBlocks felkínálja mely részeit szeretném használni a wxWidgetsnek. Négyet ezekből nem tudok kiválasztani, azok nem használhatók. Ezek a következők:
- wxDbGrid
- wxOdbc
- wxGl
- wxQa