Skip to content

Build libc with debug info

本文使用環境為 64 bit Ubuntu 16.04

Download source code

The GNU C Library (glibc) 官方網站下載 glibc source code,以 glibc 2.23 為例

下載 glibc 2.23 並解壓縮

wget https://ftp.gnu.org/gnu/libc/glibc-2.23.tar.gz
tar zxvf glibc-2.23.tar.gz

Configure and build

進入 glibc-2.23 資料夾中並新增一個 build 的資料夾供編譯使用

cd glibc-2.23
mkdir build

進入 build 資料夾並設定編譯參數

  • CFLAGS
    • debug 選項全開並盡量不要做優化
    • 可參考以下範例
  • prefix
    • 編譯完檔案所放位置
    • 範例為放置家目錄下的 glibc 資料夾內
cd build
CFLAGS='-g3 -ggdb3 -gdwarf-4 -Og -Wno-error' ../configure --prefix=/home/`whoami`/glibc

編譯並安裝

make -j4
make install -j4

Note

編譯 32 bit 版本的 glibc

  • CC
    • gcc -m32
  • CFLAGS
    • host=i686-linux-gnu
    • build=i686-linux-gnu
CC='gcc -m32' CFLAGS='-g3 -ggdb3 -gdwarf-4 -Og -Wno-error --host=i686-linux-gnu --bulid=i686-linux-gnu' ../configure --prefix=/home/`whoami`/glibc