今天进行Libpcap编程的时候出现的问题如下找到一篇能解决的文章现copy下面。

[root@zyh c编程]# gcc  -o ldev ldev.c -lpcap
[root@zyh c编程]# ./ldev

./ldev: error while loading shared libraries: libpcap.so.1: cannot open shared object file: No such file or directory

根据下面的方法可以解决

(同时把以前安装的libpcap删除(指定路径的安装在编程时出现好些问题,不能正常使用,可能这样安装不对吧,具体why也没时间研究了)。

重新用#./configure   #make # make install  安装到系统默认路径中去了。)

关于 error while loading shared libraries: libXXX.so.1.2.3: cannot open shared object file: No such file or directory

  关于 error while loading shared libraries: libXXX.so.1.2.3: cannot open shared object file: No such file or directory

此时你可以locate libXXX.so.1.2.3 (如果你的文件系统比以前有了变化,如安装了可能是需要的库的开发包,则需要 locate -u 一下)



然 后如果发现了libXXX.so.1.2.3的确存在,就把libXXX.so.1.2.3所在的目录加入到 /etc/ld.so.conf 中,或者在 /etc/ld.so.conf.d/ 下新建一文件,如 XXX.conf ,其内容是libXXX.so.1.2.3所在的目录。


如果发现libXXX.so.1.2.3不存在,你可能没安装包含库的程序。一般google一下“XXX linux”就能找到相应的软件。



如果提示是error while loading shared libraries: libXXX.so,但你的系统上有libXXX.so.5,你可以为libXXX.so.5


做一个软链接 ln -s libXXX.so.5 libXXX.so




如,我执行一个ACE开发包中的样例程序时,出现以下提示:


./logging_app: error while loading shared libraries: libACE.so.5.4.7: cannot open shared object file: No such file or directory




[root@lf ld.so.conf.d]# locate libACE.so.5.4.7


/opt/ace/ace/libACE.so.5.4.7


/opt/ace/lib/libACE.so.5.4.7


[root@lf ld.so.conf.d]# vi ace.conf



ace.conf中只有一行: /opt/ace/lib