如何将 GCC HTML 文档从源代码构建到单个页面中?

如何将 GCC HTML 文档从源代码构建到单个页面中?

我曾向 GDB 询问过类似的问题:如何从源代码构建 GDB 文档?,它改变了我的生活,现在我希望海湾合作委员会也能如此!

我设法在 Ubuntu 16.04 和 gcc 6.4.0 源代码树(以匹配我的主机)上构建文档:

./contrib/download_prerequisites
./configure
make
host-x86_64-pc-linux-gnu/gcc
make html
xdg-open HTML/gcc-6.4.0/gcc/index.html

但我无法将所有内容放入一个页面中,我尝试过:

make html MAKEINFO=makeinfo MAKEINFOFLAGS='--no-split'

但它不像 binutils 那样工作。

如果我不首先构建 GCC 本身,而是make html直接构建,则会失败并显示:

checking for x86_64-pc-linux-gnu-gcc... /data/git/gcc/host-x86_64-pc-linux-gnu/gcc/xgcc -B/data/git/gcc/host-x86_64-pc-linux-gnu/gcc/ -B/usr/local/x86_64-pc-linux-gnu/bin/ -B/usr/local/x86_64-pc-linux-gnu/lib/ -isystem /usr/local/x86_64-pc-linux-gnu/include -isystem /usr/
local/x86_64-pc-linux-gnu/sys-include   
checking for C compiler default output file name... 
configure: error: in `/data/git/gcc/x86_64-pc-linux-gnu/libgomp':
configure: error: C compiler cannot create executables
See `config.log' for more details.
Makefile:24442: recipe for target 'configure-target-libgomp' failed
make[1]: *** [configure-target-libgomp] Error 1
make[1]: Leaving directory '/data/git/gcc'
Makefile:1268: recipe for target 'do-html' failed
make: *** [do-html] Error 2

问题是该文件:

host-x86_64-pc-linux-gnu/gcc/xgcc

不存在,我想知道为什么需要它,因为我想要的只是构建文档。

我想获取以下位置的文档:https://gcc.gnu.org/onlinedocs/gcc-6.4.0/gcc/并希望列出的其他手册https://gcc.gnu.org/onlinedocs/例如 CPP 手册,每个都作为一个 HTML 页面,我可以轻松地使用 Ctrl + F 进行访问。

答案1

这对我有用:

git clone git://gcc.gnu.org/git/gcc.git gcc
cd gcc/gcc
./configure
make gcc-vers.texi
mkdir HTML
makeinfo --html --no-split -Idoc -Idoc/include -o HTML doc/gcc.texi

与 、 等的 makefile 相同gccint.htmlcpp.html忽略gccMAKEINFOFLAGS变量。

相关内容