![GCC 的头文件位于哪里?](https://linux22.com/image/1123915/GCC%20%E7%9A%84%E5%A4%B4%E6%96%87%E4%BB%B6%E4%BD%8D%E4%BA%8E%E5%93%AA%E9%87%8C%EF%BC%9F.png)
我想手动添加一些头文件,如math.h
和graphic.h
,gcc
但不知道把它们放在哪里。
答案1
首先查看/usr/include
或/usr/local/include
。
如果您找不到任何内容,请尝试:
`gcc -print-prog-name=cc1plus` -v
此命令询问 gcc 正在使用哪个 C++ 预处理器,然后询问该预处理器在哪里寻找包含内容。
您将获得针对您的特定设置的可靠答案。
同样,对于 C 预处理器:
`gcc -print-prog-name=cc1` -v
答案2
要查找标题位置,只需使用定位命令:
locate -b '\math.h'
locate -b '\graphics.h'
或者更简单的方法
locate \*/math.h
locate \*/graphics.h
如果你更熟悉正则表达式使用
locate -r \/math.h$
要确保数据库是最新的,请启动:
sudo updatedb
这就是我搜索标题位置的方法。它比使用寻找命令。
查找未安装包中的标头
为了完整起见,我发布了一个单行脚本,在我看来,这个脚本对于查找涉及特殊头文件的 apt 包非常有用。
#!/usr/bin/env bash
apt-file search $1 | cut -f 1 -d ":" | sort -u
例如,将这一行代码保存到你的~/.local/bin
目录中aptfilesearch
,并使其可执行chmod +x aptfilesearch
。现在,你将获得所有软件包的列表,包括你正在搜索的头文件。下面是一个简单的演示:
aptfilesarch math.h