歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux共享庫位置配置(LD_LIBRARY_PATH環境變量 或者 更改/etc/ld.so.conf 或者 使用-R選項)

Linux共享庫位置配置(LD_LIBRARY_PATH環境變量 或者 更改/etc/ld.so.conf 或者 使用-R選項)

日期:2017/2/28 16:16:10   编辑:Linux教程

嘗試使用libosip2,安裝比較簡單,按照自帶的help文檔裡面的操作進行即可。

$>mkdir linux-build

$>cd linux-build

$>../libosip2-2.2.0/configure

$>make (最後2步要在管理員權限下執行)

# make install

完成之後,會在/usr/local/lib路徑下生成一些lioosipXXX.so的文件,在/usr/local/include下生成關於osip的頭文件。

為了測試安裝是否正確,在eclipse下建了個測試項目,寫了很簡單的代碼:

#include <sys/time.h>//不加的話,編譯時會報錯,可能osip依賴於time.h

#include <osip2/osip.h>

//之所以能找到/usr/local/include下關於osip的頭文件,是因為eclipse默認把/usr/local/include 放到Include directories裡面了。在eclipse的項目屬性-->C++ General-->Path and symbols -->Include裡面可以看到。如果自己寫makefile文件的話,要加上-I 選項,表示程序裡include的頭文件去哪裡找。參見 http://www.linuxidc.com/Linux/2011-05/35444.htm 關於頭文件說明

#include <iostream>

using namespace std;

int main()

{

int i;

osip_t *osip;

i = osip_init(&osip);

if(i != 0)

cout << "error" << endl;

cout << "ok" << endl;

return 0;

}

並且在eclipse的項目屬性-->C/C++ Build-->Settings-->Tool settings-->GCC C++ Linker-->Libraries加上-lpthread -losip2的選項。

編譯鏈接都沒有問題,運行時報錯:

error while loading shared libraries: libosip2.so.4: cannot open shared object file: No such file or directory

然後查到可能是因為共享庫設置的問題:

Copyright © Linux教程網 All Rights Reserved