[解決済み] UbuntuのデフォルトのGCCコンパイラを変更する方法は?
質問
私は gcc-3.3/g++-3.3 を ubuntu 11.04 にインストールしましたが、すでに gcc/g++-4.4 がインストールされています。したがって、私のシステムでgcc-3.3と4.4の両方が利用可能です。私は両方のコンパイラを好きなように呼び出すことができます。もし私が単にコマンド
gcc
を呼び出せば、gcc-4.4が呼び出されます。gcc-3.3を呼び出すには、私はコマンド
gcc-3.3
.
デフォルトのコンパイラをgcc-3.3に変更するにはどうしたらよいですか?コマンドを実行すると
gcc
を実行すると、gcc-4.4ではなくgcc-3.3が呼び出されるはずです。
さらに、make ファイル内の変数 CXX を gcc-3.3 に変更するにはどうしたらよいでしょうか。すべての make ファイルを変更するのではなく、システム内の 1 つの共通のグローバルな場所を変更したいのです。
どのように解決するのですか?
Tommy が提案したように
update-alternatives
.
ファミリーのすべてのソフトウェアに値を割り当てるので、アプリケーションが呼び出される順序が定義されます。
これは、システム上で同じソフトウェアの異なるバージョンを維持するために使用されます。あなたの場合、いくつかのデクリネーションで
gcc
を使用することができ、1つが優先されます。
gcc の現在の優先順位を知るには、@tripleee さんのコメントで指摘されているコマンドを入力します。
update-alternatives --query gcc
では、優先順位が
gcc-4.4
にはより高い優先度を与える必要があるからです。
gcc-3.3
.
選択肢を設定するには、次のようなものを用意します。
(あなたの
gcc
にインストールされていると仮定します。
/usr/bin/gcc-3.3
に、そして
gcc-4.4
の優先度は50未満)
:
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-3.3 50
--edit--。
最後に、対話的なインターフェイスである
update-alternatives
を使って簡単にバージョンを切り替えることができます。タイプ
update-alternatives --config gcc
と入力すると、インストールされているものの中から使いたいgccのバージョンを選ぶように指示されます。
--edit 2 --.
さて、CXX環境変数をシステム全体で修正するためには、@DipSwitchの示す行をあなたの
.bashrc
ファイルに記述する必要があります (これは自分のユーザーに対してのみ変更を適用するため、私見ではより安全です)。
echo 'export CXX=/usr/bin/gcc-3.3' >> ~/.bashrc
関連
-
Linux sarコマンドによるシステム性能の詳細解析事例
-
[解決済み] UbuntuにBoostをインストールする方法
-
sudo が sudo として表示される: setuid root である必要がある
-
Process.waitFor()の戻り値の意味するところ
-
[解決済み] フォルダとそのサブフォルダ/ファイルのパーミッションを一括で変更する方法
-
[解決済み] find .コマンドでディレクトリを除外する方法
-
[解決済み] Unix/Linuxで、ファイルのあるフォルダを別のフォルダにコピーするにはどうしたらいいですか?[クローズド]
-
[解決済み] g++とgccの違いは何ですか?
-
[解決済み] Ubuntu LinuxにJDKをインストールする方法
-
[解決済み] Ubuntuでnodeパッケージマネージャを使用してパッケージをインストールすることができない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
LinuxでPingを無効にする、または許可する設定方法
-
deepin20のファイルを共有する方法を教えてください。Windowsでdeepinファイルを共有するためのヒント
-
deepinシステムからログアウトする方法は?deepinシステムからログアウトし、ユーザーを切り替える方法
-
rsyncとinotfiyの組み合わせでリアルタイムバックアップ問題を実現
-
deepin linuxからmacosx仮想マシンに直接ファイルをドラッグ&ドロップする方法は?
-
Linux Mintシステムでプログラムをアンインストールするには? Linux で不要なアプリケーションをアンインストールするためのヒント
-
Linux Mint システムの背景画像を変更する方法は? Linuxでデスクトップの背景を変更するためのヒント
-
LinuxでJenkinsプラグインのインストールが遅い場合の解決策
-
deepin depth systemはどのような内容でアップデートされましたか?deepinの最新版アップデート内容まとめ
-
Process.waitFor()の戻り値の意味するところ