创建autotools构建源的调试版本

dim*_*mba 7 makefile compilation autotools

鉴于:

  • source tar.gz
  • AFAIK,configure确实支持调试构建(configure --help不显示--enable-debug)

问题:

  • 如果软件包的作者首先没有提供它,那么使用调试版本是否安全?
  • 如果pre.v问题的答案是肯定的,那么我是如何产生调试版本的?我应该修补configure.ac吗?

谢谢

den*_*ane 14

精心设计的Autotools项目支持用户提供的编译器和链接器标志.一些作者选择提供--enable-debug简化调试版本的创建,但它的缺席并不意味着它无法完成.我建议您尝试的第一件事是指定适合您的调试需求的编译器和链接器标志.如果你gcc在Linux 上使用,那可能是

./configure CFLAGS="-ggdb3 -O0" CXXFLAGS="-ggdb3 -O0" LDFLAGS="-ggdb3"
Run Code Online (Sandbox Code Playgroud)

建议将变量指定为要配置的参数,如图所示,而不是环境变量.通过这种方式,当您进行触发自动重新配置的更改时,Autotools将保留这些设置.

如果这不能产生预期的结果,是的,可能需要黑客攻击构建系统.