先寫一個簡單的文件1.c:
然后編譯兩個庫,一個不加 -g, 一個加:
gcc 1.c -c
gdb -shared -fpic -o lib1.so 1.o
cp 1.c 2.c
gcc -c -g 2.c
gcc -shared -fpic -o lib2.so 2.o
下面介紹幾種判斷的方法:
1. 使用 objdump
可以看出,對于使用 -g的庫, objdump --debugging會有很多 debug相關的信息輸出。對于 沒有加-g的庫,則沒有這樣的輸出。
也可用 readelf -w 或者 objdump -W
2.使用 gdb.
注意有輸出: Reading symbols from lib2.so.。.done.
對于 lib1.so,輸出為 Reading symbols from lib1.so.。.(no debugging symbols found)。..done.
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
Linux
+關注
關注
87文章
11304瀏覽量
209499 -
虛擬機
+關注
關注
1文章
917瀏覽量
28196
發布評論請先 登錄
相關推薦
Xilinx庫文件的編譯
Library下拉表中選擇simprims_ver仿真庫,在查找范圍選項中選中“Xilnx\ise\verilog\src\simprims”目錄下的全部文件,單擊Compile按鈕進行編譯
發表于 02-27 15:16
gcc和Linux gcc 的常用選項
gcc的使用方法gcc 【選項】文件名gcc常用選項gcc-v: 查看gcc編譯器的版本,顯示gcc執行時的詳細過程-oplease the
發表于 10-19 22:43
嵌入式Linux工具之GCC常用編譯選項
“-I dir”選項可以在頭文件的搜索路徑列表中添加 dir 目錄。由于 Linux 中頭文件都默認放到了“/usr/include/”目錄下,因此,當用戶希望添加放置在其他位置的頭
gcc的使用方法以及Linux gcc 的常用選項
gcc的使用方法 gcc 【選項】文件名 gcc常用選項 gcc -v: 查看gcc編譯器的版本,顯示gcc執行時的詳細過程 -ofile
Linux交叉編譯選項與源碼與目標文件分離
交叉編譯選項 編譯Linux,通常只需要運行 make menuconfig 配置要編譯的模塊,然后運行 make 。
評論