Skip to content
Skip to content
Menu
Info Cafe
Info Cafe

Instalacja GCC

By admin on 16 marca, 2021

Ta strona ma na celu zaoferowanie wskazówek, aby uniknąć niektórych typowych problemów podczas instalacji GCC, oficjalne dokumenty instalacyjne znajdują się w sekcji Installing GCC w głównej dokumentacji GCC. N.B. te dokumenty instalacyjne odnoszą się do trunk development, instrukcje instalacyjne dla wydanych wersji są zawarte w źródłach release.

Dla większości ludzi najprostszym sposobem na zainstalowanie GCC jest zainstalowanie pakietu stworzonego dla twojego systemu operacyjnego. Projekt GCC nie dostarcza gotowych binariów GCC, tylko kod źródłowy, ale wszystkie dystrybucje GNU/Linux zawierają pakiety dla GCC. Systemy oparte na BSD zawierają GCC w swoich zbiorach portów. Dla innych systemów operacyjnych strona Instalowanie GCC: Binarie zawiera listę źródeł binariów GCC pochodzących od stron trzecich.

Jeśli nie możesz znaleźć odpowiednich binarek dla swojego systemu, lub potrzebujesz nowszej wersji niż jest dostępna, będziesz musiał zbudować GCC ze źródła aby go zainstalować.

Budowanie GCC

Wiele osób spieszy się z próbą zbudowania GCC bez przeczytania dokumentacji instalacyjnej i popełnia jeden lub więcej z tych powszechnych błędów:

  • Nie uruchamiaj ./configure z wewnątrz katalogu źródłowego, to nie jest obsługiwane. Musisz uruchomić configure spoza katalogu źródłowego, w oddzielnym katalogu utworzonym dla kompilacji (to jest FAQ)

  • jeśli GCC dynamicznie łączy się z bibliotekami wspierającymi GMP, MPFR lub MPC, to odpowiednie biblioteki współdzielone muszą znajdować się w ścieżce dynamicznego linkera, zarówno podczas budowania gcc, jak i podczas używania zainstalowanego kompilatora (to także FAQ)

Biblioteki pomocnicze

Patrz Instalowanie GCC: Prequisites dla oprogramowania wymaganego do zbudowania GCC. Jeśli nie masz zainstalowanych bibliotek wspierających GMP, MPFR i MPC jako części systemu operacyjnego, są dwa proste sposoby postępowania i jeden trudny, podatny na błędy. Z jakiegoś powodu większość ludzi wybiera ten trudny sposób. Łatwe sposoby to:

  • Jeśli system operacyjny dostarcza wystarczająco aktualne wersje, użyj systemu zarządzania pakietami systemu operacyjnego, aby zainstalować biblioteki pomocnicze w standardowych lokalizacjach systemowych. Dla systemów opartych na Debianie, włączając Ubuntu, powinieneś zainstalować pakiety libgmp-dev, libmpfr-dev i libmpc-dev. W systemach opartych na RPM, włączając Fedorę i SUSE, należy zainstalować pakiety gmp-devel, mpfr-devel i libmpc-devel (lub mpc-devel na SUSE). Pakiety te zainstalują biblioteki i nagłówki w standardowych katalogach systemowych, aby mogły być automatycznie znalezione podczas budowania GCC.

  • Alternatywnie, po rozpakowaniu archiwum źródłowego GCC, wystarczy uruchomić skrypt ./contrib/download_prerequisites w katalogu źródłowym GCC. Spowoduje to pobranie bibliotek pomocniczych i utworzenie dowiązań symlinkowych, powodując ich automatyczną budowę jako część procesu kompilacji GCC. Ustaw GRAPHITE_LOOP_OPT=no w skrypcie jeśli chcesz zbudować GCC bez ISL, które jest potrzebne tylko dla opcjonalnych optymalizacji pętli Graphite.

Trudnym sposobem, który nie jest zalecany, jest pobranie źródeł dla GMP, MPFR i MPC, a następnie skonfigurowanie i zainstalowanie każdego z nich w niestandardowych lokalizacjach, następnie skonfigurować GCC z –with-gmp=/some/silly/path/gmp –with-mpfr=/some/silly/path/mpfr –with-mpc=/some/silly/path/mpc, następnie być zmuszonym do ustawienia LD_LIBRARY_PATH=/some/silly/path/gmp:/some/silly/path/mpfr:/some/silly/path/mpc/lib w twoim środowisku na zawsze. Jest to głupie i powoduje poważne problemy dla każdego, kto nie rozumie, jak dynamiczne linkery znajdują biblioteki w czasie uruchamiania. Nie rób tego. Jeśli budowanie GCC nie powiedzie się podczas używania którejkolwiek z opcji –with-gmp lub –with-mpfr lub –with-mpc, to prawdopodobnie nie powinieneś ich używać.

Konfiguracja

Zobacz Instalowanie GCC: Konfiguracja dla pełnej dokumentacji. Główną zaletą uruchamiania srcdir/configure spoza katalogu źródłowego (zamiast uruchamiania ./configure) jest to, że katalog źródłowy nie zostanie w żaden sposób zmodyfikowany, więc jeśli twoja kompilacja się nie powiedzie lub chcesz ponownie skonfigurować i zbudować ponownie, po prostu usuniesz wszystko z objdir i zaczniesz od nowa.

Na przykład, skonfigurowanie i zbudowanie GCC 4.6.2 (z obsługą C, C++, Fortran i Go) powinno być tak proste jak:

tar xzf gcc-4.6.2.tar.gzcd gcc-4.6.2./contrib/download_prerequisitescd ..mkdir objdircd objdir$PWD/../gcc-4.6.2/configure --prefix=$HOME/GCC-4.6.2 --enable-languages=c,c++,fortran,gomakemake install

Krok make zajmuje dużo czasu. Jeśli twój komputer ma wiele procesorów lub rdzeni, możesz go przyspieszyć budując równolegle używając make -j 2 (lub wyższej liczby dla większej równoległości).

Jeśli twój build nie powiedzie się, a twoje polecenie configure ma wiele skomplikowanych opcji, powinieneś spróbować usunąć opcje i zachować prostotę. Nie dodawaj wielu opcji configure, których nie rozumiesz, mogą one być powodem niepowodzenia kompilacji.

Zobacz wpisy

Czy Facebook pobiera opłatę od użytkownika?
Łatwe Bezglutenowe Muffinki Przepis

Dodaj komentarz Anuluj pisanie odpowiedzi

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Najnowsze wpisy

  • Firebush (Polski)
  • Prognoza stawek CD na 2021 rok: Stopy procentowe prawdopodobnie pozostaną na niskim poziomie, ale mogą wzrosnąć w dalszej części roku
  • Jak ustrukturyzować dokumentację systemu zarządzania jakością
  • Zdrowe Gry i Zajęcia dla Dzieci | UIC Online Informatics
  • Wheat Ales (American) (Polski)
  • Korzyści z karmienia piersią po roku
  • Czy bezpiecznie jest wrzucać fusy z kawy do zlewu | Atomic Plumbing
  • Cool-Down After Your Workout (Polski)
  • Nasza praca
  • Najlepsza ręczna maszyna do szycia do kupienia: 2020

Meta

  • Zaloguj się
  • Kanał wpisów
  • Kanał komentarzy
  • WordPress.org

Archiwa

  • Marzec 2021
  • Luty 2021
  • Styczeń 2021
  • Grudzień 2020
  • DeutschDeutsch
  • NederlandsNederlands
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • PolskiPolski
  • 日本語日本語
©2021 Info Cafe | WordPress Theme by SuperbThemes.com