を介してgccをMacにインストールします。Mac開発者のWebサイトからXcodeとコマンドラインツールをインストールしました。これは数回読んだことが前提条件です。 MacPortsプログラムもインストールしました。ターミナルの場合:

sudo port install gcc48 sudo port select -set gcc mp-gcc48 

次のように入力するまで、上記はすべてスムーズに進みました:

hash gcc

Enterキーを押すと、次のエラーメッセージが表示されます。

-bash:hash:gcc:not found

途方に暮れていて、 Mac(Mac OS X 10.9.1を実行している)にgccを正常にインストールする方法を知っている。

gccをインストールするための提案や代替案に多くの義務がある

コメント

  • 特にgccが必要な理由はありますか? clangは同じ構文を使用し、コンパイルが高速になり、コードが高速に生成されます。主要なバグは過去数年で潰されました。
  • 編集はこれを助けるでしょう。コンパイルする必要のあるパッケージがある場合は、それをリストします。 gccを面白くするためにコンパイルする方法を知りたいだけなら、'でも問題ありませんが、どちらの答えも異なります。
  • which gcc give?
  • 〜/ .profileでパス変数を確認しましたか? gccが配置されているディレクトリを指している必要があります。
  • ; s -l / opt / local / bin / gcc *は何を示していますか?

回答

Macportsよりも自作からgccをインストールする方が良いかもしれません。

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" brew doctor brew update brew search gcc 

このパッケージマネージャーから利用できるgccのバージョンは約6つあります。

をご覧ください。また、このスレッドには、gccと自作の詳細が記載されています: GCCをインストールする方法自作?最後に、シェルのgccエラーは次のスレッドに似ています: Xcodeをインストールしましたが、まだインストールしていません'端末にgccがありません

コメント

  • これがmacportsよりも優れているのはなぜですか?

回答

2つの問題が考えられます。1つの問題はパスです。/usrの前に/ opt / local / binを配置する必要があります。 / bin現在/ usr / binの後ろに/ opt / local / binがあります。このためg ++はおそらくまだclangにリンクしています。

もう1つの問題は、portselectコマンドを間違って使用していることです。ポートselectコマンドは自動的にg ++ flを作成します指定したコンパイラへのagリンク。この場合、指定されたコンパイラはmp-4.8であり、-setではなく–setである必要があります。道順はこのウェブページにあります http://dropbit.com/?p=84

回答

ポート選択コマンドが期待どおりに機能しなかったと思います。マニュアルには、選択コマンドが複数のバージョンから選択すると記載されています。バージョン管理されたポートは、ここではではないと思います。

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. 

gcc(ここではバージョン4.9)のインストールコマンドを正常に実行した後:

sudo port install gcc49

「gccバイナリがインストールされていることを確認できます:

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 

次に、フルパスを使用してgccを実行できます。バイナリ:

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. 

clang complierをgccに(一時的または永続的に)置き換える場合は、CC envvarを次のように設定します。例:

export CC=/opt/local/bin/gcc-mp-4.9 # set GCC as default C compiler

補足として、 port select gccVersionを機能させるには、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. 

パッケージの詳細を確認していないため、clangとポートがインストールされたgccの間で機能するのか、ポートがインストールされたgccパッケージのいくつかの異なるバージョンでのみ機能するのかわかりません。

コメント

  • gccパッケージとポート選択の間でのみ機能するはずです
  • その'最初の文で述べたこと、メイト。
  • (ただし、gcc_selectパッケージをインストールする必要がありますが、ここではそうではないようです)。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です