glibc编译debug版本

2019-07-13 09:16发布

http://blog.csdn.net/jichl/article/details/7951996 下载glibc http://ftp.gnu.org/gnu/glibc/

you must configure in a separate build directory
我把glibc安装在/usr/local/glibc2121目录下 源代码放在/opt/glibc-2.12.1目录下
cd  /usr/local/glibc2121
/usr/local/src/glibc-2.12.1/configure --prefix=/usr/local/glibc2121
make make install
===================================================================== 当然,想要可以gdb进入libc的源代码,config的时候需要使用debug参数
/opt/glibc-2.12.1/configure --prefix=/usr/local/glibc2121/ --enable-debug=yes CFLAGS="-O2 -g" CPPFLAGS="-O2 -g" 使用"-O2 -g"时,可能导致调试代码和程序不一致,这时可以使用“-O1 -g”
/opt/glibc-2.12.1/configure --prefix=/usr/local/glibc2121/ --enable-debug=yes CFLAGS="-O1 -g" CPPFLAGS="-O1 -g"
这时候,运行你的程序还是不能进入debug版本的libc,这时因为你的程序会默认使用系统的libc.so 可以使用export LD_LIBRARY_PATH=/usr/local/glibc2121/xxx,来修改程序搜索so的路径 或者可以在编译的时候指定rpath参数。