回答編集履歴
1
追記
answer
CHANGED
@@ -28,6 +28,28 @@
|
|
28
28
|
|
29
29
|
本来このオプションはプリプロセッサーを通じてソースファイルの内容が実際にどのように展開されるかを確認するためにあるのだと思いますが、ヘッダーの場所もたまたま出てるので使ってもよい気がしました。
|
30
30
|
|
31
|
+
**追記: asmさんにご指摘いただいたようにgccだと-Hの方がずっと見やすいです**。-Hですとヘッダーの場所がどこかとヘッダーの依存関係が視覚的にわかりやすく出てきます。
|
32
|
+
```bash
|
33
|
+
$ gcc -H -c ss.c
|
34
|
+
. /usr/include/sys/time.h
|
35
|
+
.. /usr/include/_ansi.h
|
36
|
+
... /usr/include/newlib.h
|
37
|
+
.... /usr/include/_newlib_version.h
|
38
|
+
... /usr/include/sys/config.h
|
39
|
+
以下省略
|
40
|
+
```
|
41
|
+
そういえばmakefileのヘッダーの依存関係を自動生成する方法があったと思い、も少し調べてみると-Mオプションなんかもいいと思いました。
|
42
|
+
```bash
|
43
|
+
$ gcc -M ss.c
|
44
|
+
ss.o: ss.c /usr/include/sys/time.h /usr/include/_ansi.h \
|
45
|
+
/usr/include/newlib.h /usr/include/_newlib_version.h \
|
46
|
+
/usr/include/sys/config.h /usr/include/machine/ieeefp.h \
|
47
|
+
以下省略
|
48
|
+
```
|
49
|
+
こちらはmakeのための依存行をもろに出すものですが-Hと同様どこにヘッダーがあるかそのものを出力してくれます。自動的に依存関係を考慮するようなmakefileをほとんど書いたことがないので-Mがすぐに出てきませんでした。また-Hの方は全然知りませんでした(^^;
|
50
|
+
|
51
|
+
ご指摘ありがとうございました。>asmさん
|
52
|
+
|
31
53
|
### -vオプション
|
32
54
|
|
33
55
|
```bash
|