首先是一个安装了库之后的基本问题:
http://www.cnblogs.com/amboyna/archive/2008/02/06/1065322.html
error while loading
shared libraries的解決方法
运行程式時,如此遇到像下列這種錯誤:
./tests: error while loading shared
libraries: xxx.so.0:cannot open shared object file: No such file or
directory
那就表示系統不知道xxx.so
放在哪個目錄下。
這個時候就要在/etc/ld.so.conf中加入xxx.so所在的目錄。
一般而言,有很多so檔會在/usr/local/lib這個目錄下,所以在/etc/ld.so.conf中加入/usr/local/lib這一行,可以解決此問題。
將 /etc/ld.so.conf存檔後,還要執行「/sbin/ldconfig –v」來更新一下才會生效。
(PS:你也可以在运行的时候指定变量,例如:
LD_LIBRARY_PATH=path_to_libjthread ./example1
其中path_to_libjthread是你的库所在目录,即/usr/local/lib/
———————————————————————————————————————————————————————————————————————————————
但是,头痛医头脚痛医脚的做法是不可取的。
因此,这里简单介绍一下下载并安装一个库的方法,以jrtplib为例。
安装方法可以是:
[root@linuxgam src]# tar jxvf jrtplib-2.7b.tar.bz2
接下去需要对JRTPLIB进行配置和编译:
[root@linuxgam src]# cd
jrtplib-2.7[root@linuxgam jrtplib-2.7b]# ./configure [root@linuxgam
jrtplib-2.7b]# make
最后再执行如下命令就可以完成JRTPLIB的安装:
[root@linuxgam
jrtplib-2.7b]# make install
步骤一般就是:解压——配置——make——make install
安装之后的使用:
首先确定了安装之后生成的库文件:
/USR/LOCAL/INCLUDE目录下会有头文件的目录
在写makefile的时候使用-I选项
/USR/LOCAL/LIB中会有.a(静态库),.so(共享库)
在写makefile的时候使用-l选择
例如:g++ -o example1 example1.cpp -I
/usr/local/include/jrtplib/ -ljrtp
阅读(1000) | 评论(0) | 转发(0) |