Vývojová prostředí a překladače C/C++

Aktualizováno: 12. 11. 2019, datum vydání: 26. 11. 2011

Norma ISO C++

Pokud potřebujete dodržovat normu ISO C++, kterou používá např. kniha Programovací jazyk C++ pro zelenáče, doporučuji nainstalovat prostředí Code::Blocks. Používání této normy najdete v různých knížkách a je požadována i na školách ve školních úlohách.

V dnešní době je k dispozici tato normapdf Standard C++ ISO 2010 na stránkách open-std.org.

Mé úspěšné rozchození C/C++

Code::Blocks

Po všech možných neúspěšných pokusech, které popisuji níže, jsem sáhla po tom, co bylo doporučováno na stránce Sallyx – programování v C a C++, a to po Code::Blocks. Instalace je bezproblémová, editor funguje, prográmky taky. Dokonce editor umí automaticky používat vybrané formátování syntaxe. Po prvních pokusech jsem zatím s ním spokojená. Jen si musíte hned na začátku vybrat název pro projekt a uložit ho na správné místo, např. do vašich dokumentů.

Mně se automaticky detekoval překladač, který jsem nainstalovala automaticky při instalaci wxDev-C++ a nastavily se mi automaticky cesty pro compiler na: C:\Program Files (x86)\Dev-Cpp. Proto to možná všechno fungovalo tak hezky napoprvé :-).

Pokud potřebujete výsledný exe soubor pustit s nějakými parametry, můžete to udělat přes MS-DOS okno například takto:

C:\Users\Jitka\Documents\CodeBlocks projects\pokus\bin\Debug>pokus.exe 2 3
1. int argument je 2
2. int argument je 3
Pokračujte stisknutím libovolné klávesy...

Možná jdou parametry zadat i někde v IDE Code::Blocks, ale teď momentálně nevím ještě jak.

Editor SciTE + MinGW

Další možnost, která mi funguje je obyčejný editor SciTE. Tento editor je obyčejný textový editor (něco jako chytřejší poznámkový blok), který ani nejde přímo napojit na překladač. Umožní vám psát pohodlně text se zvýrazněním syntaxe.

Zvlášť si nainstalujete překladač MinGW například podle návodu pro NetBeans, nebo automaticky při instalaci wxDev-C++. Při instalaci MinGW překladače je nutné, abyste zaškrtli volbu MSYS. MSYS obsahuje soubor make.exe. Pokud nenainstalujete MSYS jako součást MinGW, musí se MSYS nainstalovat extra zvlášť. V návodu je doporučeno MSYS instalovat zvlášť. Pokud by se někdo rozhodl pro překladač Cygwin, tak tam se zase při instalaci musí extra vybrat přidání balíčků gcc-core (C compiler), gcc-g++ (C++ compiler), gdb (The GNU Debugger), make (the GNU version of the 'make' utility), jinak vám kompilace C++ nebude běžet.

Já bych doporučovala instalovat překladač MinGW skrze vývojové prostředí wxDev-C++. Ten vím, že fungoval a myslím, že i mně se nyní defaultně spouští. Mám teď nainstalovaných překladačů v PC moc, takže mám trochu zmatek, který se mi přesně spouští. Návod ještě dodatečně upřesním po instalací na jiných PC a nabrání dalších zkušeností...

Nicméně, kombinace SciTE a MinGW je vhodná v případě, kdy budete výsledný exe soubor potřebovat spouštět s nějakými parametry. Pak si opravdu ručně přes MS-DOS pustíte překladač a ručně si spustíte výsledný exe soubor s parametry například tímto způsobem:

Microsoft Windows [Verze 6.0.6002]
Copyright (c) 2006 Microsoft Corporation. Všechna práva vyhrazena.

C:\Users\Jitka>cd C:\Users\Jitka\Documents\SciTE projects\

C:\Users\Jitka\Documents\SciTE projects>g++ pokus.cpp -o pokus.exe
Warning: .drectve `-aligncomm:"___hexdig_D2A",5' unrecognized

C:\Users\Jitka\Documents\SciTE projects>pokus.exe 2 2 1
main ma vic jak 2 parametry
Pokračujte stisknutím libovolné klávesy...

C:\Users\Jitka\Documents\SciTE projects>g++ --version
g++ (GCC) 3.4.5 (mingw-vista special r3)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Zdrojový cpp soubor musí obsahovat konečný Enter u posledního řádku, jinak mi to vyhazovalo chybu při překladu, že soubor není ukončen. V programu SciTE si můžete konečné entery nechat zobrazit volbou View/End of line.

Další nepopiratelnou výhodou používání SciTE je to, že máte pouze jeden jediný soubor cpp a k němu příslušný exe soubor. Nevytváří se vám žádná adresářová struktura pro projekt apod. Pro školní účely z tohoto pohledu ideální. Nicméně pohodlnější práci budete mít v prostředí Code::Blocks.

Mé neúspěšné rozchození C/C++

V prvé řadě bych zde chtěla poznamenat, že to, že já jsem byla neúspěšná vůbec nemusí znamenat, že i vy budete neúspěšní. Třeba budete šikovnější, nebo vám to na daném OS nebude dělat zrovna potíže.

Microsoft Visual Studio 2019

Skvělé vývojové prostředí zdarma pro jazyk C++ nabízí Microsoft Visual Studio 2019 ve své Community edici.

Netbeans

Netbeans je skvělý editor pro Javu a nejenom pro ni. Ačkoli si nainstalujete plnou verzi Netbeans včetně C/C++, tak bohužel součástí verze není automaticky překladač C/C++. Ten si musíte extra sami nainstalovat a prostředí Netbeans patřičně nakonfigurovat. Pro Windows jsou nabízeny dva překladače: Cygwin a MinGW. Je třeba:

  • nainstalovat překladače,
  • nastavit proměnné prostředí (proměnná PATH ve Windows),
  • nakonfigurovat Netbeans na daný překladač.

Zkoušela jsem oba dva překladače, bohužel mi ani jeden z nich mi v Netbeans ve Windows Vista neběžel správně. Konfigurace je dosti složitá, opět je možné, že jsem něco opomněla…

WxDev-C++

Protože v knížce Programovací jazyk C++ pro zelenáče z roku 2005 (str. 27) bylo doporučováno prostředí Microsoft Visual Studia C++ verze 6 či Dev-C++ šířeného bezplatně pod GNU GPL licencí, zkusila jsem Dev-C++. Dočetla jsem se, že právě v roce 2005 byl vývoj tohoto prostředí zastaven a nejlepším nástupcem je wxDev-C++. Toto prostředí stačí klasicky nainstalovat a běží.

Zpočátku mi prostředí fungovalo, akorát mne prudilo požadavky na opakované přeuložení či znovunačtení souborů v momentu, kdy jsem chtěla program spustit. Bylo to dosti nepříjemné, protože to bylo cca 5 až 7 naprosto zbytečných hlášek, než vůbec došlo ke spuštění programu. Po instalaci různých jiných kompilátorů do PC mi prostředí přestalo fungovat úplně a jednoduchý program už nešel spustit. Nicméně toto IDE stojí za ozkoušení, možná budete mít štěstí a blbnout vám nebude.

Další články