terminálon keresztül. Telepítettem az Xcode-ot, és a Mac Developers webhelyéről telepítettem a parancssori eszközöket, amelyeket néhányszor elolvastam. Telepítettem a MacPorts programot is. A terminálban:
sudo port install gcc48 sudo port select -set gcc mp-gcc48
Mindezek simán mentek, amíg be nem írtam:
hash gcc
Amikor megnyomom az Enter billentyűt, a következő hibaüzenetet kapom:
-bash: hash: gcc: not found
Tanácstalan vagyok és nem tudd, hogyan kell tovább haladni a gcc sikeres telepítéséhez a Mac gépemre (amely a Mac OS X 10.9.1 rendszert futtatja).
Nagyon fontos minden javaslat és alternatíva a gcc telepítésére
Megjegyzések
Válasz
Lehet, hogy jobban jár, ha telepíti a gcc-t a homebrew-ból, mint a Macports.
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" brew doctor brew update brew search gcc
Körülbelül 6 verziója érhető el a gcc-től a csomagkezelőtől. Lásd: http://brew.sh a homebrew eszközökkel kapcsolatos további részletekért. Ez a szál további részleteket tartalmaz a gcc-ről és a homebrew-ról: Hogyan telepítsem a GCC-t a következőn keresztül: Homebrew? Végül a héjában lévő gcc hiba hasonló ehhez a szálhoz: Telepítettem az Xcode-ot, de még mindig nem ' Nincs terminálomon a gcc
Megjegyzések
- Miért lenne ez jobb a macportnál?
Válasz
Ezeknek két problémája lehet. Az egyik probléma az Ön útja. A / opt / local / bin fájlnak az / usr előtt kell lennie / bin jelenleg a / opt / local / bin / usr / bin mögött van. Emiatt a g ++ valószínűleg még mindig a clanghoz kapcsolódik.
A másik probléma az, hogy rosszul használja a port select parancsot. A port select parancs automatikusan létrehoz egy g ++ fl-t ag link a megadott fordítóhoz. Ebben az esetben a megadott fordítónak mp-4.8-nak kell lennie, és a -set helyett –set. Az utasítások ezen a weboldalon találhatók: http://dropbit.com/?p=84 .
Válasz
Nem gondolom, hogy a port select parancs azt tette, amire számítottál. A kézikönyv kimondja, hogy a select parancs a verziószámú port , amely véleményem szerint nem az Ön esete itt:
pejvan$ port help select Usage: select --list --set --show --summary <arguments> Select between multiple versions of a versioned port This allows you to choose which version, among several installed versions of a port, is to be considered primary. What this means is which version becomes the one most would consider the default, e.g. the one run without specifying any version.
Miután sikeresen futtatta a gcc telepítési parancsát (itt a 4.9 verzió):
sudo port install gcc49
Ellenőrizheti, hogy telepítették-e a gcc bináris fájlokat:
pejvan$ ls -l /opt/local/bin/gcc* -rwxr-xr-x 2 root admin 42912 3 Jun 03:44 /opt/local/bin/gcc-ar-mp-4.9 -rwxr-xr-x 3 root admin 1082788 3 Jun 03:44 /opt/local/bin/gcc-mp-4.9 -rwxr-xr-x 2 root admin 42992 3 Jun 03:44 /opt/local/bin/gcc-nm-mp-4.9 -rwxr-xr-x 2 root admin 43000 3 Jun 03:44 /opt/local/bin/gcc-ranlib-mp-4.9
Ezután a gcc teljes elérési útjával futtatható a bináris fájlok:
pejvan$ gcc-mp-4.9 --version gcc-mp-4.9 (MacPorts gcc49 4.9-20140416_2) 4.9.0 20140416 (prerelease) Copyright (C) 2014 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.
Ha (clan (ideiglenesen vagy véglegesen) le akarja cserélni a clang complier-t gcc-vel, akkor megteheti a CC env var beállításával az alábbiak szerint: például:
export CC=/opt/local/bin/gcc-mp-4.9 # set GCC as default C compiler
Megjegyzésként kérjük, vegye figyelembe, hogy a port select gccVersion
működéséhez telepítenie kell a gcc_select
:
pejvan$ port info gcc_select gcc_select @0.1_8 (sysutils) Description: gcc_select installs files that allow "port select" to switch the default version of gcc. It symlinks the standard compiler executables in the MacPorts prefix to the selected version.
Nem néztem meg a csomag részleteit, ezért nem vagyok biztos abban, hogy a clang és a port telepített gcc között fog működni, vagy csak a portra telepített gcc csomagok különböző verzióival.
Megjegyzések
- Csak a gcc csomagok és a port select között kellett volna működnie
- Ezeknek ' amit az első mondatban elmondtam, mate.
- (DE telepítenie kell a gcc_select csomagot, amire itt nem úgy tűnik a helyzet).
which gcc
adja?