libAdminConsole.so文件需要的小伙伴,可以到騰牛網(wǎng)免費下載,幫助大家解決Linux電腦中缺少該文件無法打開某程序的問題。
.so文件是什么?
.so文件是Linux下的程序函數(shù)庫,即編譯好的可以供其他程序使用的代碼和數(shù)據(jù)
linux下何謂.so文件:
1. 用過windows的同學(xué)應(yīng)該都知道 .dll文件吧, 這二者有什么共通之處呢,其實 .so文件就跟.dll文件差不多.//
2.一般來說.so文件就是常說的動態(tài)鏈接庫, 都是C或C++編譯出來的。與Java比較就是:它通常是用的Class文件(字節(jié)碼).//
3.Linux下的.so文件時不能直接運行的,一般來講,.so文件稱為共享庫.//
.so文件怎么用?
for example:
(1)動態(tài)庫的編譯
這里有一個頭文件:so_test.h,三個.c文件:test_a.c、test_b.c、test_c.c,我們將這幾個文件編譯成一個動態(tài)庫:libtest.so。
命令:$ gcc test_a.c test_b.c test_c.c -fPIC -shared -o libtest.so
(參考2:都是由C或C++編譯出來的)
(-shared 該選項指定生成動態(tài)連接庫(讓連接器生成T類型的導(dǎo)出符號表,有時候也生成弱連接W類型的導(dǎo)出符號),不用該標志外部程序無法連接。相當于一個可執(zhí)行文件)
(-fPIC:表示編譯為位置獨立的代碼,不用此選項的話編譯后的代碼是位置相關(guān)的所以動態(tài)載入時是通過代碼拷貝的方式來滿足不同進程的需要,而不能達到真正代碼段共享的目的。)
(2)動態(tài)庫的鏈接
這里有個程序源文件 test.c 與動態(tài)庫 libtest.so 鏈接生成執(zhí)行文件 test:
命令:$ gcc test.c -L. -ltest -o test
(注:測試是否動態(tài)連接,如果列出libtest.so,那么應(yīng)該是連接正常了)
(-L.:表示要連接的庫在當前目錄中)
(-ltest:編譯器查找動態(tài)連接庫時有隱含的命名規(guī)則,即在給出的名字前面加上lib,后面加上.so來確定庫的名稱)
命令:$ ldd test
(注:執(zhí)行test,可以看到它是如何調(diào)用動態(tài)庫中的函數(shù)的。)





