1. 庫
2. 靜態庫:ar –rcsvlib***.a func1.o func2.o func3.o (- r:在庫中插入模組(替換)。當插入的模組名已經在庫中存在,則替換同名的模組。 -s :寫入乙個目標檔案到庫中 a – ***.o 在庫的最後新增乙個新檔案 v :顯示資訊 c:表示只編譯,不鏈結)
3. 靜態庫的使用:gcc main.c –o testmain –l./ -l*** 即可 (-ldir是在dir這個路徑下尋找這個靜態庫)
4. 動態庫:fpic : 生成使用相對位址的位置無關的目標**。 -shared 可以生成動態庫,進行動態編譯,盡可能的連線動態庫。
5. 步驟:1)gcc –fpic –wall –c func.c 生成相對位置無關的.o檔案 2)gcc –shared –o libfunc.so func.o 使用位置無關的.o檔案建立動態庫。 3)使用 gcc –o test test.c –l./ -lfunc 4)在最後需要將這個動態庫拷貝到/lib或者/usr/lib下才能正常執行可執行文,因為系統預設這兩個是系統預設庫路徑名,動態庫在執行的時候才會被用到。
6. 1) 2)可以整合成一句 gcc –shared –wl , -realname,libfunc.so –o libfunc.so string.c
建立自己的C語言函式庫
1 現將二各函式sub1 及sub2 建立成乙個函式庫檔案取名為mylib.lib。兩個函式的函式及型參如下 void sub1 void float sub2 int i,float x 將它們分別建立乙個檔案,取名為s1.c及s2.c,在用命令tcc對它們反別編譯後產成兩個目標檔案s1.obj及...
C 語言 靜態庫和動態庫的建立和應用
getpi.c double getpi void mylib.h ifndef mylib h define mylib h void say const char str double getpi void endif mylib h run.bat prompt me s rem 生成靜態庫 ...
C 語言建立Access資料庫
首先新增引用 com元件 microsoft ado ext.2.8 for ddl and security 然後使用adox命令空間下catalogclass類的creat方法實現 string dbname d newaccess.mdb adox.catalogclass access ne...