- 1 1. Úvod
- 2 2. Předpoklady
- 3 3. Jak nainstalovat GCC
- 4 4. Základní použití GCC
- 5 5. Správa více verzí
- 6 6. Řešení problémů
- 7 7. FAQ
- 7.1 Jak mohu nainstalovat nejnovější verzi GCC?
- 7.2 Jak odinstaluji GCC?
- 7.3 Co bych měl udělat, pokud jsou vybíratelné pouze starší verze?
- 7.4 Co dělat, pokud dojde k chybám závislostí?
- 7.5 Jak použít specifickou verzi GCC pro konkrétní projekt?
- 7.6 Co bych měl udělat, pokud dojde k chybě „command not found“?
- 7.7 Shrnutí
- 8 8. Závěr a další kroky
1. Úvod
Co je GCC?
GCC (GNU Compiler Collection) je open‑source kompilátor schopný kompilovat více programovacích jazyků, jako jsou C a C++. Je široce používán jako výchozí kompilátor v mnoha distribu.
Klíčové vlastnosti GCC:
- Podporuje více jazyků, včetně C, C++, Fortran, Java a dalších.
- Open source a volně použitelný kýmkoli.
- Umožňuje rychlou a spolehlivou kompilaci.
Proč používat GCC na Ubuntu?
- Součástí standardního balíčku Repozitáře Ubuntu obsahují GCC ve výchozím nastavení, což usnadňuje instalaci.
- Bohatá podpora a dokumentace Díky velkému počtu uživatelů po celém světě je k dispozici spousta informací pro řešení problémů a přizpůsobení.
- Zdarma k použití Můžete si vytvořit výkonné vývojové prostředí za nízkou cenu.
- Snadno přizpůsobitelné Můžete spravovat více verzí GCC, což vám umožní vytvořit prostředí vhodné pro každý projekt.
Shrnutí
V tomto článku jsme představili přehled GCC a výhody jeho používání na Ubuntu. GCC je výkonný kompilátor, který podporuje více jazyků a je zdarma k použití, a na Ubuntu je zvláště snadné jej nainstalovat.

2. Předpoklady
Aktualizace systému a kontrola závislostí
Nejprve aktualizujte informace o balíčcích Ubuntu na nejnovější stav. To pomáhá předcházet chybám během instalace.
1. Aktualizujte systém na nejnovější stav
sudo apt update
sudo apt upgrade
sudo apt update: Aktualizuje seznam balíčků na nejnovější verzi.sudo apt upgrade: Aktualizuje nainstalované balíčky na jejich nejnovější verze.
Poznámky:
- Aktualizace může trvat několik minut.
- Pokud se po aktualizaci zobrazí zpráva „restart required“, restartujte systém.
Kontrola vývojových nástrojů
Pro instalaci GCC jsou vyžadovány základní vývojové nástroje a balíčky. Spusťte následující příkaz pro předběžnou instalaci potřebných balíčků.
sudo apt install build-essential
Tento příkaz nainstaluje základní vývojovéstroje, včetně GCC.
Příklady nainstalovaných balíčků:
- gcc (C kompilátor)
- g++ (C++ kompilátor)
- make (nástroj pro sestavení)
Kontrola stavu instalace
Pro potvrzení, které balíčky jsou nainstalovány a kontrolu jejich verzí, použijte následující příkaz:
gcc --version
Ukázkový výstup:
gcc (Ubuntu 9.4.0-1ubuntu1) 9.4.0
Copyright (C) 2021 Free Software Foundation, Inc.
Pokud vidíte tento výstup, můžete potvrdit, že GCC byl nainstalován správně.
Shrnutí předpokladů
Do tohoto bodu jste splnili předpoklady potřebné k instalaci GCC.
- Aktualizovali a povýšili systém na nejnovější stav.
- Nainstalovali požadované balíčky pro přípravu prostředí.
- Ověřili stav instalace GCC a verzi.
3. Jak nainstalovat GCC
Základní kroky instalace
Na Ubuntu lze GCC snadno nainstalovat z oficiálního repozitáře. Postupujte podle níže uvedených kroků.
- Nainstalujte balíček build-essential
sudo apt install build-essential
Tento příkaz nainstaluje GCC, G++ a kompletní sadu vývojových nástrojů.
- Potvrďte průběh instalace Během instalace, pokud se zobrazí „Proceed? (Y/n)“, zadejte „Y“ a stiskněte Enter.
Jak ověřit po instalaci
Po dokončení instalace ověřte verzi GCC, abyste potvrdili, že vše bylo nainstalováno správně:
gcc --version
Ukázkový výstup:
gcc (Ubuntu 9.4.0-1ubuntu1) 9.4.0
Copyright (C) 2021 Free Software Foundation, Inc.
Pokud se zobrazí informace o verzi, jak je uvedeno, GCC byl úspěšně nainstalován.
Instalace dalších nástrojů nebo knihoven
Někdy samotná instalace GCC není dostačující, takže můžete chtít nainstalovat následující doplňkové balíčky:
- Nainstalujte G++ (C++ kompilátor)
sudo apt install g++
- Nainstalujte ladicí nástroje
sudo apt install gdb
- Nainstalujte vývojové manuálové stránky
sudo apt install manpages-dev
Toto zajišťuje, že můžete okamžitě odkazovat na nápovědu a manuální stránky související s GCC, když je potřebujete.
Řešení problémů s neúspěšnými instalacemi
- Balíček nenalezen
E: Unable to locate package build-essential
Řešení: Aktualizujte informace o repozitáři:
sudo apt update
sudo apt upgrade
- Došlo k chybám oprávnění
Permission denied
Řešení: Použijte sudo na začátku příkazů pro spuštění s administrátorskými oprávněními.
Shrnutí kroků instalace
V této sekci jsme vysvětlili, jak instalovat GCC a ověřit instalaci, stejně jako jak instalovat další balíčky.
Klíčové body:
- Použijte
sudo apt install build-essentialpro rychlou instalaci. - Zkontrolujte verzi pro ověření stavu instalace.
- Přidejte G++, gdb a další nástroje podle potřeby.

4. Základní použití GCC
Vytvoření a kompilace jednoduchého programu
- Vytvoření vzorového programu
Nejprve vytvořte jednoduchý program „Hello, World!“:
nano hello.c
Když se otevře editor, zadejte následující kód:
#include <stdio.h>
int main() {
printf("Hello, World!n");
return 0;
}
Po zadání stiskněte Ctrl + X pro uložení, poté Y pro potvrzení a ukončení.
Kompilace programu
Dále kompilujte tento program pomocí GCC:
gcc hello.c -o hello
Vysvětlení příkazu:
gcc: Příkaz kompilátoru.hello.c: Soubor zdrojového kódu ke kompilaci.-o hello: Určuje název výstupního souboru jako „hello.“
Spuštění zkompilovaného programu
Spuštěte zkompilovaný program následujícím příkazem:
./hello
Očekávaný výstup:
Hello, World!
Pokud je toto zobrazeno, program byl úspěšně zkompilován a spuštěn.
Zpracování chyb
- Chyby způsobené chybami v kódování
Příklad chybové zprávy:
hello.c: In function ‘main’:
hello.c:3:5: error: expected ‘;’ before ‘return’
return 0;
Řešení:
Chybová zpráva uvádí umístění (např. řádek 3). Zkontrolujte svůj kód a opravte syntaktické chyby.
- Chyba kompilace
Příklad chyby:
gcc: command not found
Řešení:
GCC nemusí být nainstalován. Reinstalujte pomocí:
sudo apt install build-essential
- Chyba za běhu
Příklad chyby:
bash: ./hello: Permission denied
Řešení:
Pokud soubor nemá oprávnění k vykonání, použijte:
chmod +x hello
./hello
Možnosti optimalizace
GCC umožňuje používat možnosti optimalizace pro zlepšení výkonu programu.
Příklad: Určení úrovně optimalizace
gcc -O2 hello.c -o hello
-O1: Základní optimalizace.-O2: Pokročilejší optimalizace.-O3: Maximální optimalizace (upřednostňující rychlost vykonávání).
To vám pomůže efektivněji optimalizovat rychlost vykonávání nebo velikost kódu.
Shrnutí
V této sekci jsme probrali vytváření, kompilaci a spuštění základního programu pomocí GCC.
Klíčové body:
- Naučili jste se, jak vytvořit vzorový kód a zkompilovat ho.
- Prozkoumali jsme, jak zpracovávat chyby, když nastanou.
- Představili jsme možnosti optimalizace pro zlepšení výkonu.
5. Správa více verzí
Instalace více verzí
Na Ubuntu můžete instalovat různé verze GCC současně. Instalujme více verzí pomocí následujících kroků.
- Kontrola dostupných verzí
sudo apt search gcc-
Tento příkaz vám umožní zobrazit seznam verzí GCC v repozitáři.
Příklad výstupu:
gcc-9 - GNU C compiler
gcc-10 - GNU C compiler
gcc-11 - GNU C compiler
- Instalace požadovaných verzí
Například instalujte GCC 9 a GCC 10:
sudo apt install gcc-9 gcc-10
Po dokončení instalace přejděte k konfiguraci přepínání verzí.
Jak přepínat verze
Ubuntu podporuje příkaz update-alternatives pro snadné přepínání verzí GCC.
- Registrace nainstalovaných verzí GCC s update-alternatives
Spusťte:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100
V tomto nastavení je GCC 10 registrován jako preferovaný výchozí (priorita 100).
- Vyberte verzi k použití
Použijte následující příkaz k manuálnímu výběru požadované verze:
sudo update-alternatives --config gcc
Ukázka výstupu:
There are 2 choices for the alternative gcc (providing /usr/bin/gcc).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/gcc-10 100 auto mode
1 /usr/bin/gcc-9 90 manual mode
2 /usr/bin/gcc-10 100 manual mode
Press <enter> to keep the current choice[*], or type selection number:
Zadejte požadované číslo a stiskněte Enter.
Použití specifické verze pro každý projekt
Pokud chcete používat konkrétní verzi pro každý projekt, můžete příslušně přepnout symbolické odkazy.
- Vytvořte nebo aktualizujte odkaz
sudo ln -sf /usr/bin/gcc-9 /usr/bin/gcc
Tento příkaz nastaví GCC 9 jako výchozí verzi.
- Ověřte verzi
gcc --version
Ověřte, že je nakonfigurovaná verze správně aplikována.
Shrnutí
V této sekci jsme vysvětlili, jak instalovat více verzí GCC a používat update-alternatives k snadnému přepínání.
Klíčové body:
- Nainstalujte verze, které potřebujete, a spravujte je pomocí
update-alternatives. - Můžete také nastavit symbolické odkazy k použití specifické verze pro každý projekt.

6. Řešení problémů
Chyby během instalace a jak je řešit
Příklad chyby 1: Balíček nenalezen
E: Unable to locate package build-essential
Příčina:
Seznam balíčků není aktuální, nebo má konfigurace repozitáře problémy.
Řešení:
Spusťte následující příkazy k aktualizaci informací o repozitáři:
sudo apt update
sudo apt upgrade
sudo apt install build-essential
Další oprava:
sudo add-apt-repository universe
sudo apt update
To může umožnit nalezení balíčku.
Příklad chyby 2: Odepřen přístup
Permission denied
Příčina:
Příkazy nejsou spouštěny s administrativními právy.
Řešení:
Přidejte sudo před všechny instalační příkazy.
sudo apt install build-essential
Chyby během kompilace a jak je řešit
Příklad chyby 1: Kompilátor nenalezen
gcc: command not found
Příčina:
GCC není nainstalován nebo není PATH nastaven správně.
Řešení:
Zkontrolujte, zda je GCC nainstalován:
sudo apt install gcc
Pokud je nainstalován, zkontrolujte a upravte symbolický odkaz:
sudo ln -s /usr/bin/gcc-10 /usr/bin/gcc
Příklad chyby 2: Chyba propojení knihovny
undefined reference to 'main'
Příčina:
Funkce main není definována ve vašem programu, nebo selhalo propojení.
Řešení:
Ujistěte se, že je zahrnuta funkce main, a překompilujte s možnostmi propojení, např.:
gcc -o output main.c -lm
Chyby za běhu a jak je řešit
Příklad chyby 1: Žádné oprávnění k provedení
bash: ./program: Permission denied
Příčina:
Spustitelný soubor nemá oprávnění k provedení.
Řešení:
Udělte oprávnění k provedení:
chmod +x program
./program
Příklad chyby 2: Chybějící knihovny
error while loading shared libraries: libXXX.so: cannot open shared object file: No such file or directory
Příčina:
Požadované sdílené knihovny nejsou nainstalovány.
Řešení:
Zkontrolujte název chybějící knihovny a nainstalujte ji:
sudo apt install libXXX-dev
Chyby během přepínání verzí a řešení
Příklad chyby: Přepnutí nebylo aplikováno
gcc --version
Pokud se nepřepnutá verze nezobrazí, znovu zkontrolujte svá nastavení update-alternatives.
Řešení:
- Zkontrolujte seznam alternativ:
sudo update-alternatives --config gcc
- Vyberte správné číslo.
- Aktualizujte symbolický odkaz.
sudo ln -sf /usr/bin/gcc-9 /usr/bin/gcc
Shrnutí
V této sekci jsme vysvětlili běžné chyby vyskytující se během instalace a používání GCC a jejich strategie řešení.
Klíčové poznámky:
- Chyby instalace lze často vyřešit aktualizací repozitářů nebo úpravou nastavení repozitářů.
- Chyby kompilace lze vyřešit kontrolou kódu a možností odkazování.
- Chyby za běhu často vznikají z problémů s oprávněními nebo chybějících knihoven.
- Problémy s přepínáním verzí lze řešit pomocí symbolických odkazů a úprav
update-alternatives.
7. FAQ
Jak mohu nainstalovat nejnovější verzi GCC?
Otázka:
Chci nainstalovat nejnovější verzi GCC, ale výchozí repozitář nabízí pouze starší verze. Co bych měl udělat?
Odpověď:
K instalaci nejnovější verze GCC můžete přidat repozitář PPA.
- Přidejte repozitář PPA:
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
- Aktualizujte seznam balíčků:
sudo apt update
- Nainstalujte nejnovější verzi:
sudo apt install gcc-12
- Ověřte verzi:
gcc --version
Jak odinstaluji GCC?
Otázka:
Chci odinstalovat GCC. Jak bych měl postupovat?
Odpověď:
GCC můžete odstranit pomocí následujících příkazů:
sudo apt remove gcc
sudo apt autoremove
Pokud chcete také odstranit související nástroje, přidejte:
sudo apt remove build-essential
Co bych měl udělat, pokud jsou vybíratelné pouze starší verze?
Otázka:
I když používám update-alternatives --config gcc, zobrazují se pouze starší verze. Jak mohu přidat novější verzi?
Odpověď:
Ručně přidejte novější verzi do nastavení alternativ.
- Nainstalujte verzi, kterou potřebujete:
sudo apt install gcc-12
- Přidejte ji ručně do alternativ:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 120
- Vyberte verzi:
sudo update-alternatives --config gcc
Co dělat, pokud dojde k chybám závislostí?
Otázka:
Během instalace GCC se objevují chyby závislostí. Jak je mohu vyřešit?
Odpověď:
Chyby závislostí mohou vzniknout proto, že systém není aktuální. Spusťte:
sudo apt update
sudo apt upgrade
Pokud to nevyřeší problém, automaticky opravte poškozené závislosti:
sudo apt --fix-broken install
Jak použít specifickou verzi GCC pro konkrétní projekt?
Otázka:
Chci používat různé verze GCC pro jednotlivé projekty. Jak to nastavím?
Odpověď:
Vytvořte symbolický odkaz uvnitř adresáře projektu, který ukazuje na požadovaný binární soubor GCC.
- Vytvořte lokální odkaz:
ln -s /usr/bin/gcc-9 ./gcc
- Používejte ho lokálně v příkazech pro kompilaci:
./gcc -o program program.c
Co bych měl udělat, pokud dojde k chybě „command not found“?
Otázka:
I když jsem nainstaloval GCC, vidím „gcc: command not found.“ Co bych měl udělat?
Odpověď:
Nejprve ověřte instalaci:
dpkg -l | grep gcc
Pokud GCC není nainstalován, přeinstalujte ho:
sudo apt install gcc
Pokud to stále selže, zkontrolujte symbolický odkaz:
ls -l /usr/bin/gcc
Pokud je odkaz poškozený, opravte ho:
sudo ln -sf /usr/bin/gcc-10 /usr/bin/gcc
Shrnutí
V této sekci jsme představili často kladené otázky a jejich konkrétní řešení pro GCC.
Klíčové poznámky:
- Nejnovější verzi lze nainstalovat prostřednictvím repozitářů PPA.
- Odinstalace a správa verzí se snadno řeší pomocí
update-alternatives. - Poskytli jsme také konkrétní příklady příkazů pro řešení problémů.

8. Závěr a další kroky
Rekapitulace tohoto článku
- Přehled GCC a jeho role
- GCC je výkonný kompilátor podporující více jazyků, jako je C a C++.
- Na Ubuntu lze snadno nainstalovat z oficiálního repozitáře, což ho činí ideálním pro budování vývojových prostředí.
- Kroky instalace a přípravy
- Aktualizovali jsme systém a nainstalovali balíček
build-essential. - Také jsme ověřili verze a řešili problémy se závislostmi.
- Základní použití
- Vysvětlili jsme, jak vytvořit, zkompilovat a spustit ukázkové programy.
- Diskutovali jsme, jak reagovat na chyby a používat optimalizační možnosti.
- Správa více verzí a přepínání
- Vysvětlili jsme, jak použít
update-alternativesk přepínání mezi verzemi GCC podle projektu.
- Řešení problémů a FAQ
- Pokryli jsme možné chyby při instalaci a používání a poskytli konkrétní řešení.
Další zdroje
Zde jsou zdroje, které pomohou při dalším učení nebo aplikacích:
- Oficiální dokumentace Ubuntu
- Oficiální stránka Ubuntu poskytuje podrobné návody k správě balíčků a vývojovým nástrojům.
- Oficiální dokumentace GNU GCC
- Oficiální příručka GCC vám umožní ponořit se do pokročilých nastavení a používání.
- Průvodci Linux console
- Linux Console publikuje informace o řešení problémů napříč tématy Linuxu.
- Vzdělávací stránky a fóra
- Qiita a Stack Overflow jsou skvělé pro prohlížení ukázek kódu a odpovědí.
Další kroky
- Použít GCC v reálných projektech
- Používejte GCC ve skutečných projektech a provádějte pokročilejší vývoj.
- Používat knihovny a rozšíření
- Instalujte další knihovny podle potřeby, abyste rozšířili funkce svého projektu.
- Učit se nové jazyky a nástroje
- Učením se dalších jazyků nebo nástrojů pro sestavování usilujte o další rozvoj dovedností.
- Zapojit se do komunity
- Připojte se k fórům nebo open-source projektům, sdílejte znalosti a společně rozvíjejte praktické dovednosti.
Závěrečné slovo
V tomto článku jsme krok za krokem vysvětlili, jak nainstalovat a používat GCC na Ubuntu. Pokrývá vše od základů po řešení problémů, což i začátečníkům usnadňuje nastavení vývojového prostředí.
Jedna poslední poznámka:
Používejte tento článek jako referenci pro aplikaci GCC ve svých projektech, užívejte si programování a v případě nových otázek se obraťte na FAQ nebo další zdroje.
V dalším článku plánuji pokrýt základy syntaxe C a C++ a pokročilé vývojové techniky. Zůstaňte naladěni!


