2016-11-22 5 views
0

コマンド:g++ -vを使用して、現在使用しているGCCのバージョンを確認します。しかし、私は出力を得る:MacでGCCコンパイラを使用して現在のバージョンはどこにありますか?

$ g++ -v 
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/include/c++/4.2.1 
Apple LLVM version 8.0.0 (clang-800.0.42.1) 
Target: x86_64-apple-darwin16.1.0 
Thread model: posix 
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin 

私は理解していない。プログラムをコンパイルするときにLLVMまたはGCCを使用していますか:g++ test.cpp? GCCについての情報を要求しているときに、なぜLLVMに関する情報が表示されるのですか? Clangとフロントエンドとして使用されているLLVM。 私はそこで逃したのですか?

+0

g ++ --version? –

+0

g ++がlinuxのエイリアスであるかどうか試してみてください。 'alias g ++'を使うことができます – baddger964

答えて

2

簡単な答えはgcc/g ++のふりをしているAppleのLLVMを使用しているということです。これは大きな問題ではありません。 GCCの-march=nativeの最適化はLLVMで動作しないため、実行中のCPU集約型プログラムではパフォーマンスが約50%悪化しました。

ベースのツールチェーンをインストールすると、多くの作業が必要になります。 Compiling GCC 6 on macOS SierraおよびCompiling GCC 6 on OS Xを参照してください。

本当のことができたら、専用のGNU binutilsなどを作ることもできます。

+0

GCCのインストールは完全に難しいですか?長いビルド時間以外に、私は 'bcc install gcc'には問題がなかった。 HomebrewのGCCで私が知っている注意点は、競合を避けるために 'PATH'にインストールしないことです。それはコースを変更するのに十分簡単です。 – RegularlyScheduledProgramming

+0

難しい、いいえ。退屈な、はい。新しいバージョンが出てくるのを楽しみにしているわけではありません。また、私はいくつかの友人が誤ってアップルのユーティリティを本物のgccなどで使用してツールを構築するために発生した問題を追跡するのを助けました。 –

2

あなたはLLVMを使用しています。 GCCをインストールしていない場合(Homebrewなど)、GCCはインストールされていません。システム上のGCCへの参照は、ほとんどのコードを問題なくコンパイルできるようにするためのClangのエイリアスです。

関連する問題