GCCのヘッダーファイルはどこにありますか?


10

私は手動でのように、いくつかのヘッダファイルを追加したいmath.hgraphic.hのためのgccが、どこにそれらを置くことを知りません。

回答:


13

まず、/usr/includeまたはを確認してください/usr/local/include

そこに何も見つからない場合は、次を試してください。

`gcc -print-prog-name=cc1plus` -v

このコマンドは、gccに使用しているC ++プリプロセッサーを尋ね、次にそのプリプロセッサーがインクルードを探す場所を尋ねます。

あなたはあなたの特定のセットアップに対して信頼できる答えを得るでしょう。

同様に、Cプリプロセッサの場合:

`gcc -print-prog-name=cc1` -v

6

ファイルの配置場所だけを知りたい場合は、locateコマンドを使用します

locate -b '\math.h'
locate -b '\graphics.h'

多分あなたは前にあなたのデータベースを更新する追加があります:

sudo updatedb

これが、ヘッダーの場所を検索する方法です。これは、findコマンドを使用するよりもはるかに高速です。


math.hすでに存在しているはずです。例:/usr/include/c++/7.3.0/math.h
Knud Larsen

通常は、libにgcc名
abu_bua

バックスラッシュは、ベース名に先行文字が含まれるファイルによる一致を防ぐためにどのように機能しますか?文字列\math.hはに評価されるはずですが、およびのようなファイルの一致math.h\math.h回避していることがわかります。tgmath.hquadmath.h
user001

1
FROM 'man Locate':厳密にNAME(* NAME *ではない)という名前のファイルを検索するには、locate -b '\ NAME'を使用します。\はグロブ文字であるため、NAMEの* NAME *による暗黙的な置換が無効になります。
abu_bua

ありがとう。確認man locateしましたが、locate(1)manページのバージョンが異なっていると思います(のインスタンスが1つもありません\ )。
user001
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.