在 Archlinux 編譯含有 debug symbols 的 glibc

改用 git/chroot 來編譯

(2019/09/27 更新)

取得 glibc PKGBUILD

  1. git clone git://git.archlinux.org/svntogit/packages.git
  2. cd packages/glib/trunk
  3. 編輯 PKGBUILD,把 options 修改成 (!strip debug staticlibs) 後存檔

clean chroot 編譯

  1. mkdir ~/chroot
  2. export CHROOT=$HOME/chroot
  3. mkarchroot $CHROOT/root base-devel
  4. arch-nspawn $CHROOT/root pacman -Syu
  5. makechrootpkg -c -r $CHROOT
  6. pacman -U <.pkg.tar.xz>

採用 ABS (Arch Build System) 方式去編譯

  1. 安裝 abs 套件 (pacman -S abs)
  2. 用 root 運行 abs (sudo abs)
  3. 把 glibc 從 /var/abs/core/glibc 複製一份到要編譯的地方 (sudo cp /var/abs/core/glibc /tmp/glibc)
  4. 到剛剛複製完的地方,編輯 PKGBIULD (nano /tmp/glibc/PKGBUILD)
  5. 把 options 修改成 (‘!strip’ ‘debug’ ‘staticlibs’) 後存檔
  6. makepkg
  7. pacman -U <.pkg.tar.xz>

利用 file 察看 /usr/lib/libc-2.24.so

 

 




如果你覺得這篇文章不錯,歡迎打賞

BTH: 35QooNA82isrmQLmpEnqXpJoxeZmaPubPf

ETH:0x4cf61fea5EA842D202B85158d8b5e239C872De46

或是點選下方圖片贊助我一杯咖啡:

Leave a reply:

Your email address will not be published.

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料