編譯連線個人總結

2021-06-26 09:39:34 字數 1155 閱讀 5454

一:軟體包介紹:

glibc : libc, ld.so, ldd, ldconfig等

binutils : ar, as, ld ,nm, objcopy, objdump, readelf, size, strip

gcc : c++, cc, cpp, libgcc, libstdc++, gcc, gccbug, gcc相關

二:gcc標頭檔案搜尋目錄

gcc --print-prog-name = cc1 cc1plus

c頭檔案目錄:'gcc --print-prog-name=cc1' -v   !!!!注意:不是單引號,是tab按鍵上面的按鍵

c++頭檔案目錄:'gcc --print-prog-name=cpp' -v

尋找策略:

1:從-i開始

2:從環境變數c_include_path等

3:內定目錄(使用-nostdinc關閉預設路徑)

二:聯結器搜尋庫目錄:ld --verbose | grep search

尋找策略:

1:從-l開始

2:環境變數library_path

3:內定目錄(使用-nostdlib關閉預設庫)

三:gcc預處理器cpp的內建巨集:gcc -posix -e -dm - 注意:不包含__line__這些。

四:執行時動態鏈結庫查詢目錄

1:編譯時指定

2:ld_library_path

3:/etc/ld.so.conf指定

4:預設動態庫查詢路徑/lib, /usr/lib.....

五:gcc環境變數

c_include_path:c程式查詢標頭檔案

cpath:c/c++/obj-c標頭檔案查詢

cplus_include_path:c++標頭檔案查詢

library_path:聯結器ld查詢庫檔案

lang:字符集

ld_library_path:執行時查詢動態庫

六:ld標準聯結器設定入口位址方法

1:ld命令列-e選項

2:鏈結指令碼entry()命令

3:如定義start符號,使用start

4:存在text section使用text section

5:使用0值

ld --vervose內建聯結器指令碼

SQL中內連線,左連線,右連線個人的理解

很久沒摸sql語句了,最近在專案中用到了sql,又撿起sql中的內連線,左連線,右連線溫習了一下,下面談談對它的理解。這個例子我是用sql server2008做的測試。先看看乙個簡單的例子,有兩個表tablea和tableb,兩個表通過tablea的b id列和tableb的id列連線。兩個的表的...

C 編譯連線總結(一) g

快速入門例子 g c a.cpp 編譯檔案,生成目標檔案 a.o g a.o o abc 連線 並重命名為可執行檔案 abc g c a.cpp o a 之後 g a 會儲存的,親驗 g a.cpp 編譯連線一起,生成a.out g a.cpp o hello 生成a.out並命名為hello 涉及...

vc 連線資料庫 個人總結

第一次接觸ado資料庫,自己的一點經驗,在這裡總結一下,以免後面忘記了,再重新來看。也許文字中有錯誤,請大家能給予指正。本文中使用的資料是access2000.h標頭檔案中定義一下變數 connectionptr m pconn recordsetptr m precset commandptr m...