bge*_*gee 5 c++ scripting include
比如说,我想要一个工具(或脚本?)来获取项目(或.h文件)并构建包含在其中的“包含”的可搜索树(包含到包含到等等)。有这样的东西存在吗?我应该自己写这个吗[当然我是:),但可能有人已经写了它或者可能知道如何得到它]?
我知道这是一个老问题,比单独的 gcc/g++ -E 输出稍微有用的输出也将使用 -H 标志(代替或补充):
g++ -H {my -I and other flags} -E -o /dev/null file.cpp
这是一个示例输出,树结构有助于找出谁包含了什么作为奖励,它还在底部列出了哪些文件可能受益于包含保护
. generated/gen-cpp/File.h
.. /usr/include/thrift/TProcessor.h
... /usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../include/c++/4.4.6/string
.... /usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../include/c++/4.4.6/x86_64-redhat-linux/bits/c++config.h
..... /usr/include/bits/wordsize.h
..... /usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../include/c++/4.4.6/x86_64-redhat-linux/bits/os_defines.h
...... /usr/include/features.h
....... /usr/include/sys/cdefs.h
........ /usr/include/bits/wordsize.h
....... /usr/include/gnu/stubs.h
........ /usr/include/bits/wordsize.h
........ /usr/include/gnu/stubs-64.h
..... /usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../include/c++/4.4.6/x86_64-redhat-linux/bits/cpu_defines.h
.... /usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../include/c++/4.4.6/bits/stringfwd.h
...
Run Code Online (Sandbox Code Playgroud)
不完全确定这就是您想要的,但是您可以通过从基本 c 文件生成 CPP 后处理的文件并 grep 出文件/行号注释(例如,使用 gcc)来轻松获取包含列表
gcc -E main.c {usual flags} | grep '#' | cut -d' ' -f3 | sort | uniq
Run Code Online (Sandbox Code Playgroud)
其中 main.c 是您的基本 c 文件。
| 归档时间: |
|
| 查看次数: |
3378 次 |
| 最近记录: |