一般C語言寫的程序可以讓其他語言進行調用,比如python, java,等等
c語言有兩種庫類型,靜態庫和動態庫(共享庫)
靜態庫和動態庫的區別
靜態庫
- 靜態庫需要和程序進行一起編譯
- 靜態庫在原理上是性能比動態庫要高的
- 一般應用在對空間要求較低,而對時間要求的核心程序中
動態庫
- 動態庫可以被程序直接進行調用不用一起進行編譯
- 雖然原理上性能比靜態庫低,但是現在優化的已經效率很高了
- 一般在寫應用程序非核心部分的時候都是用的動態庫
創建一個靜態庫
命令:ar rcs libmulib.a file1.o
- 上面的命令ar rcs libxxx.a file.o,中只有xxx的部分是可以進行發揮的部分
靜態庫的制作步驟
-
先生成.o文件
- gcc -c hello.c -o hello.o
-
生成靜態庫,使用ar工具
- ar rcs lib庫名.a a.o b.o c.o
-
使用靜態庫
- gcc test.c libtest.a -o test