我如何从源代码静态构建GDB?

时间:2012-02-20 16:33:24

标签: c linux gcc gdb

我已经下载了gdb-6.5.bz2.tar。解开这个文件。 我写: LDFLAGS = -static 的./configure

但结果我得到一个gdb,需要一个so文件,例如:ncurses.so.5 libc.so.0等

我如何静态建造?

3 个答案:

答案 0 :(得分:7)

This message似乎意味着正确的用法是

$ make LDFLAGS=-static

这似乎令人惊讶。不幸的是,它还表示无法建立,并且没有后续行动。仍然是这个消息是从1999年开始的,所以一切都可能发生了变化,也许现在正确的方法就是按照自己的方式去做。

答案 1 :(得分:6)

您可以使用 configure 脚本的以下选项生成静态GDB可执行文件:

./configure --prefix=<> --enable-static=yes && make && make install

答案 2 :(得分:2)

gcc和gdb都不尊重应传递给--enable-static的{​​{1}}标志,正确的做法是:

对于gdb 8.0,您还必须添加configure以成功构建静态版本:

--disable-interprocess-agent

对于gcc 7.1,您还必须添加mkdir build-gdb && cd build-gdb && ../configure --prefix=... --enable-static --disable-interprocess-agent ...以成功构建静态版本:

--disable-libcc1