だから私は新しいプログラマーであり、XCCをMacbookにインストールしてGCCを取得しました。 XcodeがOSXでGCCを取得する唯一の方法だと思います。 Hello WorldアプリケーションをC++で実行すると、g ++がバージョン4.0.1であると表示されますが、gで始まるコマンドを検索すると、g ++-4.2も表示されます。 4.0.1ではなく4.2をデフォルトにする方法はありますか?またgccを最新バージョン4.4.0に更新する方法はありますか?
編集:[OK]を、だから私はmacportsをインストールし、gcc4.4をインストールし、それはgcc-mp-4.4として端末に表示されます。ありがとう。
Macportsをインストールする場合、gcc selectをインストールしてから、gccバージョンを選択できます。
/opt/local/bin/port install gcc_select
バージョンを確認するには
port select --list gcc
バージョンを選択するには
Sudo port select --set gcc gcc40
私はそれが古いリクエストであることを知っています。しかし、それでも一部の人にとっては有用かもしれません。 MacPortsの現在のバージョンでは、portコマンドを使用してデフォルトのgccバージョンを選択できます。 gccの使用可能なバージョンをリストするには、次を使用します。
$ sudo port select --list gcc
Available versions for gcc: gcc42 llvm-gcc42 mp-gcc46 none (active)
GccをMacPortsバージョンに設定するには:
$ sudo port select --set gcc mp-gcc46
これを達成するためにソフトリンクを使用することは、ひどい、役に立たない、恐ろしいアイデアであると言うために立ち寄っています。
ソフトウェアの作成に関する重要なことの1つは再現性です。毎回同じ結果が得られるようにしたいと考えています。これらのシステムは非常に複雑なため、目に見えないエラーの原因をすべて減らしたいと考えています。
ソフトリンクがあることは、目に見えないエラーの原因です。 1か月で忘れてしまい、別のマシンに移動して、なぜ別の結果が得られるのか不思議に思うようなものです-または、システムをアップグレードしようとすると、そうではないので奇妙なエラーが発生しますそこにソフトリンクが必要です。
さらに、これは動作することが保証されていません-特に、gccの反復間で確実に変更された正しいシステムインクルードファイルを取得するかどうかは明確ではありません。
gcc_selectは、予測可能な動作をする同じことを体系的に行う方法です。最悪の場合、バグレポートを提出して、最終的な修正を取得するか、自分で修正することができます。
残念ながら:-( gcc_selectはXCodeが使用するコンパイラに影響を与えないので、XCodeで作業する必要がある場合(これは私が行います)、進むべき道ではありません。その方法はまだわかりません。
「gcc_select -l」を使用します
> gcc_select -l
gcc40 mp-gcc44
> gcc_select mp-gcc44
/usr/bin
タイプ
Sudo ln -s -f g++-4.2 g++
Sudo ln -s -f gcc-4.2 gcc
それはそれを行う必要があります。
ボックスに複数のバージョンのGCCを使用して、使用するバージョンを選択して、フルパスで呼び出すことができます。の代わりに g++
フルパスを使用/usr/bin/g++
コマンドラインで(gccの存在場所によって異なります)。
プロジェクトをコンパイルするためには、どのシステムを使用するかによって異なりますが、Xcodeについてはわかりません(デフォルトのatmには満足しています)が、Makefileを使用する場合はGXX =/usr/bin/g ++などを設定できます。
[〜#〜] edit [〜#〜]
Macでビルドツールの適切なバージョンを選択するためにクエリできるxcrun
スクリプトがあります。の他に man xcrun
xcodeおよびコマンドラインツール に関する説明をグーグルで検索しました。