易截截图软件、单文件、免安装、纯绿色、仅160KB

linux下找不到动态链接库


原帖地址:http://hi.baidu.com/tingyu521/blog/item/81a8b75180e4e21f377abedc.html
在编译一些开源软件的时候常常会遇到类似于error while loading shared libraries: libmysqlclient.so 等链接接库找不到。那怎么办呢?
总的来说是由于开源软件的动态链接库没有放在程序寻找的地方,尤其是连个开源软件相互协作运行的时候,例如mysql+php,mysql+sphinx。
那这样怎么办呢?
先来看看linux寻找动态链接库的顺序吧!
1.编译目标代码时指定的动态库搜索路径;
2.环境变量LD_LIBRARY_PATH指定的动态库搜索路径;
3.配置文件/etc/ld.so.conf中指定的动态库搜索路径;
4.默认的动态库搜索路径/lib;
5.默认的动态库搜索路径/usr/lib。
如果出现没有寻找到动态链接库的是时候,我们可以根据以上五个步骤去尝试解决。
1.在编译原代码的时候
./configure --help 查看一下是不是可以在编辑的时候指定lib目录和include目录
2.可以通过export将LD_LIBRARY_PATH指定为你需要搜索的路径。
3.如果要通过第三种方式去修改那么
vi /etc/ld.so.conf
在此文件中写入你需要用的动态链接库的位置
例如mysql就是/usr/local/mysql/lib/mysql
然后
ldconfig
4.在您所需要装的软件中寻找到那个动态链接库,放入到目录/lib和/usr/lib


相关文档:

实战Linux Bluetooth编程 (七) SDP协议

Service Discovery Protocol(SDP)提供一种能力,让应用程序有方法发现哪种服务可用以及这种服务的特性。
服务发现协议(SDP或Bluetooth SDP)在蓝牙协议栈中对蓝牙环境中的应用程序有特殊的含意,发现哪个服务是可用的和确定这些可用服务的特征。SDP定义了bluetooth client发现可用bluetooth server服务和它们的特征的方法。 ......

Linux设备模型之input子系统详解

一:前言
最近在研究android的sensor driver,主要是E-compass,其中用到了Linux input子系统.在网上也看了很多这方面的资料,感觉还是这篇分析的比较细致透彻,因此转载一下以便自己学习,同时和大家分享!
(这篇博客主要是以键盘驱动为例的,不过讲解的是Linux Input Subsystem,可以仔细的研究一下!)
键盘驱动将检 ......

linux下i386,i486,i586,i686的区别

linux下查看gcc版本
gcc -v
输出结果中
Target: i486-linux-gnu
i486应该是虚拟机的问题,现在主流cpu应该均为i686.
i386,i486,i586分别是针对80386,80486,80586编译的包,i686就比较广泛了,从p2开始x86处理器就进入了p6构架的时代,一直到现在都是p6架构。新架构的cpu向下兼容为旧架构编译的软件包.
i386.rpm与i686 ......

linux uniq命令详解

uniq命令
文件经过处理后在它的输出文件中可能会出现重复的行。例如,使用cat命令将两个文件合并后,再使用sort命令进行排序,就可能出现重复行。这时可以使用uniq命令将这些重复行从输出文件中删除,只留下每条记录的唯一样本。
语法:
uniq [选项] 文件
说明:这个命令读取输入文件,并比较相邻的行。在正常情况下, ......

linux下的静态库和动态库的编译

每个程序实质上都会链接到一个或者多个的库。比如使用C函数的程序会链接到C运行时库,GUI程序会链接到窗口库等等。无论哪种情况,你都会要决定是链接到静态库(static libary)还是动态库(dynamic libary)。
链接到静态库会使你的程序臃肿,并且难以升级,但是可能会比较容易部署。
而链接到动态库会使你的程序轻便,并且易 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号