首先庫檔名(庫檔名不等於庫名)的命名規則為lib+《庫名》+.so,如果有乙個 pr
otobufp
roto
bu
f庫, 那麼相應的庫檔案為 li
bpro
tobu
f.soli
bpro
tobu
f.so
為了在執行編譯命令的時候鏈結指定的庫,我們需要用到−l
−
l和−l
−
l命令.
現在來看−l
−
l編譯選項命令, 命令各式為−l
−
l《庫檔案所在路徑》 −l
−
l《庫名》
如果在路徑 /u
sr/l
ib/ us
r/li
b下面有乙個庫檔案叫做 li
bpro
tobu
f.so
l ib
prot
obuf
.s
o, 我想在編譯的時候鏈結它, 只需加上 −l
/usr
/lib
−lpr
otob
uf− l/
usr/
lib−
lpro
tobu
f命令即可.
對於那些在 /l
ib/ li
b, /u
sr/l
ib/ us
r/li
b和 /u
sr/l
ocal
/lib
/ us
r/lo
cal/
li
b路徑下的庫, 我們可以使用更加簡單的命令 −l
−
l而無需新增庫檔案路徑
gcc l引數和 L引數
l引數就是用來指定程式要鏈結的庫,l引數緊接著就是庫名,那麼庫名跟真正的庫檔名有什麼關係呢?就拿數學庫來說,他的庫名是m,他的庫檔名是libm.so,很容易看出,把庫檔名的頭lib和尾.so去掉就是庫名了 好了現在我們知道怎麼得到庫名,當我們自已要用到乙個第三方提供的庫名字libtest.so,那麼...
gcc l引數和 L引數
l引數就是用來指定程式要鏈結的庫,l引數緊接著就是庫名,那麼庫名跟真正的庫檔名有什麼關係呢?就拿數學庫來說,他的庫名是m,他的庫檔名是libm.so,很容易看出,把庫檔名的頭lib和尾.so去掉就是庫名了 好了現在我們知道怎麼得到庫名,當我們自已要用到乙個第三方提供的庫名字libtest.so,那麼...
gcc l引數和 L引數
l引數就是用來指定程式要鏈結的庫,l引數緊接著就是庫名,那麼庫名跟真正的庫檔名有什麼關係呢?就拿數學庫來說,他的庫名是m,他的庫檔名是libm.so,很容易看出,把庫檔名的頭lib和尾.so去掉就是庫名了 好了現在我們知道怎麼得到庫名,當我們自已要用到乙個第三方提供的庫名字libtest.so,那麼...