[英]Easiest way to determine which file is included in C?
例如,在
#include <stdio.h>
找出包含文件的路徑的最簡單方法是什么?
編輯:我在 Arch Linux 上使用 gcc 9.2.0。
我通常使用以下命令行在我的Makefile
生成依賴項:
gcc main.c -o main -MD
-MD
標志生成一個依賴文件,其中列出了所有包含的頭文件。
您需要找到 gcc 在哪里搜索包含文件。
嘗試
echo | gcc -E -Wp,-v -
在我的電腦上(Windows 10 上的 Ubuntu)它顯示
piotr@DESKTOP-6R1GELF:~$ echo | gcc -E -Wp,-v -
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/7/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-linux-gnu/7/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/7/include-fixed
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
# 1 "<stdin>"
# 1 "<built-in>"
# 1 "<command-line>"
# 31 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 32 "<command-line>" 2
# 1 "<stdin>"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.