gdb調試FAQ

“malloc.c: No such file or directory.”

參考:https://www.cnblogs.com/gatsby123/p/11755320.html

安裝依賴

sudo apt-get install libc6-dbg
sudo apt-get source libc6-dev

如果報錯沒有配置source.list

錯誤 E: You must put some 'source' URIs in your sources.list 指出你的 sources.list 文件中缺少源代碼倉庫(也就是 deb-src 行)。在默認情況下,Ubuntu 的系統可能只配置了二進制包的倉庫而沒有配置源代碼倉庫。爲了下載 libc6-dev 的源代碼,你需要確保 /etc/apt/sources.list 文件或者 /etc/apt/sources.list.d/ 目錄下的文件中有啓用源代碼倉庫的條目。

你可以按照以下步驟添加源代碼倉庫:

打開終端。

編輯 sources.list 文件。你可以使用任何文本編輯器,這裏我們以 nano 爲例:

sudo nano /etc/apt/sources.list

在編輯器中,找到已有的 deb 行,通常它們看起來像這樣:

deb http://us.archive.ubuntu.com/ubuntu/ focal main restricted

對於每一個你希望加入的倉庫,添加一個相應的 deb-src 行。例如:

deb-src http://us.archive.ubuntu.com/ubuntu/ focal main restricted

保存並關閉文件。(如果你正在使用 nano,使用 Ctrl+X 組合鍵,接着按 Y 確認保存更改,然後按 Enter 鍵完成操作。)

更新你的包列表:

sudo apt update

完成更新後,再次嘗試下載源代碼:

apt-get source libc6-dev

現在 apt-get source 命令應該能夠成功運行,並且會把源代碼下載到當前目錄下。請確保你正在當前用戶的權限下執行 apt-get source 命令,因爲這個命令不需要 sudo。

調試出問題的時候,輸入查找路徑:

directory glibc-2.23/malloc/
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章