15

私のLinuxプラットフォームには、いくつかのバージョンがありgccます。

私の下usr/binに:

  • gcc34
  • gcc44
  • gcc

ここにいくつかの出力があります:

$ gcc --version
gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-48)

$ gcc44 --version
gcc44 (GCC) 4.4.0 20090514 (Red Hat 4.4.0-6)

4.4バージョンを使用する必要がありgccますが、デフォルトは4.1バージョンのようです。

シンボリックリンクを使用せずにデフォルトのコンパイラを置き換え/usr/bin/gccて作成する方法はありますか?gcc44/usr/bin/gcc44

シンボリックリンクを使用できない理由は、コードをを使用してRPMパッケージで出荷する必要があるためmockです。mock最小限のLinuxインストールを最初から作成し、コードをコンパイルする前に、指定された依存関係をインストールするだけです。この「最小インストール」をカスタマイズできません。

理想的には、完璧な解決策は、デフォルトのコンパイラとして置き換えgccられる公式のRPMパッケージをインストールすることです。そのようなパッケージはありますか?これも可能/良いですか?gcc44

追加情報

SConsmake代替)を使用する必要がありますが、使用するバイナリを指定できませgcc

gccまた、ファイルでバイナリを指定する方法を教えてくれる答えも受け入れSConstructます。

4

2 に答える 2

14
  1. gcc1つの方法は、ソースからコンパイルしてインストールすることです。

  2. http://old.nabble.com/Choosing-compiler-td4675207.htmlを参照してください

それから:

env = Environment()
env.Replace(CC = "my_cc_compiler")

または、この質問への回答に従って、

env['CC'] = 'gcc44'
于 2010-05-31T15:41:33.480 に答える
8

これは過去の長い道のりですが、SConscriptファイルを変更する必要のないソリューションを追加したいと思っていました。CentOS 5でv8をビルドする必要があるので、私にとっては役に立ちました。おそらく、他の誰かにとっても役立つかもしれません。

CC=gcc44 CXX=g++44 scons

それでおしまい!

于 2012-06-01T15:32:22.327 に答える