3

gcc に関して、これらの環境変数の違いは何ですか。PATH よりも優先される COMPILER_PATH にパスを設定するのはいつですか?

4

1 に答える 1

3

そのGCCドキュメントから、コンパイラがコンパイルに必要な内部プログラム(、、、、、、など)を見つけるのにCOMPILER_PATH役立つ可能性があります。cc1cc1pluslto1collect2asld

通常、それについて心配する必要はありません(COMPILER_PATHGCC内で作業しているときでも、自分で設定する必要はありませんでした!)。(gccまたはgcc-4.7)コマンドは、これらの内部プログラムを非常にうまく見つけています。フラグを渡して、-v実行中のプログラムを理解します。たとえばgcc -Wall -v hello.c -o helloworld、試してみてください。gccそれは単なる運転プログラムであることを忘れないでください。コンパイラの実際の作業は、他の内部プログラムによって行われます(ただし、直接cc1実行する必要はありません)。cc1

良い読み物はenviron(7) のマニュアルページです。PATHプログラムの検索に使用される変数の(重要な)役割について説明します。execvp(3)のマニュアルページも参照してください。

また、 AdvancedLinuxProgrammingなどの優れた本を読むことをお勧めします。

GCCのウィキペディアのページも読むことができます。

実際には、気にしないでください。ただし、には、を含むディレクトリが含まれてCOMPILER_PATHいることを確認してください(通常は、の早い段階で必要になります)。ccacheへのシンボリックリンクもあるかもしれません。PATHgccgcc/usr/bin/gcc/usr/binPATHgcc

于 2012-10-22T10:21:39.027 に答える