2011-07-16 4 views
11

私はコマンドラインで(オープンソースライブラリ(Xerces 2.8)を使用してmakeを使用して)C++アプリケーションを構築しています。私は指定されたファイルをコンパイルするために使用されるコマンドを決定するために、make -nを入力すると、ファイルのいずれかがC++アプリケーションをビルドするときのOSXシステムインクルードファイルのデフォルトパスは何ですか?

#include <TextUtils.h> 

、OSXシステムファイルを含んで、提供されるシステムのフレームワークファイルのパスを含む全く存在しません。したがって、OSXでは、gccコンパイラがシステムインクルードファイルのデフォルトの場所を参照すると仮定します。

私はこの場所が何であるか知りたいと思います。 TextUtils.hを検索すると、さまざまなバージョンのファイルが異なる場所に表示されます。その中には、デフォルトの場所がいくつか考えられます。

システムがシステムインクルードファイル用に使用するデフォルトパスを確認するにはどうすればよいですか?デフォルトが含まである間は、次のコマンド

# echo "" | gcc -xc - -v -E 

意志出力GCCのbuildin構成を実行

+1

私はその質問を見ていましたが、私のシナリオには関係ありません。(私の質問には答えられませんでした)その質問はXcodeに関するものですが、私の質問はgccをコマンドライン。 –

+0

私の謝罪、私の最初の反応は重複の可能性でした、悲しいことに、私は 'クローズ 'を取り除くことはできません。しかし、私はこのコメントが、人々がそれをさらに閉じることを妨げることを妨げるべきであると願っています。 –

答えて

18

+0

ありがとうございます。これは方法を指摘する。ただし、上記のコマンドの関連結果は/ System/Library/Frameworksを指しますが、ファイルの実際のパスは/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/Aです。 /ヘッダー。光を捨てることはできますか? –

+1

これは正確に何を説明できますか?私はそれが私のデフォルトのインクルードパスを私に与えることがわかりますが、どのように私はそれを変更するのですか? – Tommy

+1

これは、エコーによってstdin上で提供される空のファイルを前処理し、コンパイルプロセスの各段階のコマンドラインを表示します。デフォルトはspecファイルから来ていると思っていますが、それらについてはあまりよく分かりません。 '-nostdinc'でデフォルトパスを少なくとも無視することができます。 – Eelke