当前位置:  技术问答>linux和unix

configure文件如何配置加上debug的功能?

    来源: 互联网  发布时间:2016-07-06

    本文导语:  我正在编译一个软件,make的时候,gcc都没有加-g选项,所以gdb无法很好的调试! 以下是这个configure文件的内容,我需要如何编写能够像一般的然间那样 ./configure --debug后便可在make过程中,所有的gcc命令都加上-g选项? ...

我正在编译一个软件,make的时候,gcc都没有加-g选项,所以gdb无法很好的调试!
以下是这个configure文件的内容,我需要如何编写能够像一般的然间那样
./configure --debug后便可在make过程中,所有的gcc命令都加上-g选项?


#!/bin/bash

# configure adns
(cd adns; ./configure)

#configure larbin itself
cat /dev/null > config.h
cat /dev/null > config.make

if [ -e /proc/self/status ]; then
    echo "#define HAS_PROC_SELF_STATUS" >> config.h
fi

# find existing programs
function exists () {
    command -v $1 2> /dev/null > /dev/null;
}

if exists gmake; then
    echo "MAKE=gmake" >> config.make
    export MAKE=gmake
else
    echo "MAKE=make" >> config.make
    export MAKE=make
fi

if exists gcc; then
    echo "CC=gcc" >> config.make
    export CC=gcc
fi

if exists g++; then
    echo "CXX=g++" >> config.make
fi

#find libraries to use
echo "int main () { return 0; }" > test.c

function testlib () {
    if $CC $1 -o test test.c 2> /dev/null > /dev/null; then
        echo "LIBS +=" $1 >> config.make
    fi
}

testlib -pthread
testlib -lpthread
testlib -lresolv
testlib -lsocket
testlib -lnsl

rm -f test test.c test.o

# run make dep
touch .depend
touch adns/.depend
touch src/.depend
touch src/fetch/.depend
touch src/interf/.depend
touch src/utils/.depend
$MAKE dep


|
一般执行 ./configure --help
看看有没有debug选项以及如何开启这个选项

如果没找到, 可以直接在Makefile文件的 CC=gcc -g

|
直接在Makefile文件的 CC=gcc -g  这样不行吗

|
一般情况都是这样
./configure --enable-debug

|
可以修改Makefile文件,在其中加上这一句就可以了:CFLAGS = -Wall –g

|
这样是必须要在MAkefile文件里加入那个选项的

|

一般这样就可以很好的调试自己的代码,这个时候你还可以测试一下自己的程序的内存是不是有泄漏,用valgrind这个工具:

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间javax.security.auth.login类configuration的类成员方法: configuration定义及介绍
  • debian下安装bind用./configure时提示安装bind时./configure提示whether make sets $(MAKE)... no
  • java命名空间javax.security.auth.login类configuration的类成员方法: setconfiguration定义及介绍
  • 请教:在linux下装mysql时,用./configure为什么会返回./configure: No such file or directory
  • java命名空间javax.security.auth.login类configuration的类成员方法: getparameters定义及介绍
  • configure脚本的写法
  • java命名空间javax.security.auth.login类configuration的类成员方法: gettype定义及介绍
  • ./configure 后报错
  • java命名空间javax.security.auth.login类configuration的类成员方法: getprovider定义及介绍
  • 请教个configure文件的问题
  • java命名空间javax.security.auth.login类configuration的类成员方法: refresh定义及介绍
  • 为什么我的./configure不能用?
  • java命名空间javax.security.auth.login类configuration的类成员方法: getappconfigurationentry定义及介绍
  • ./configure: Command not found.
  • java命名空间javax.security.auth.login类configuration的类成员方法: getinstance定义及介绍
  • configure是怎麼樣生成Makefile?
  • ./configure为什么要加 ./
  • "./configure"这些命令要怎么运行?
  • 请教关于configure的问题
  • 求助:我的Fedora11找不到configure命令
  • 关于redhat9下的configure问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3