五、函数库管理
1、函数库分类
静态函数库:函数库文件一般以“*.a”扩展名结尾。这种函数库在被程序调用时会被直接整合到程序当中
优点:程序执行时,不需要在调用外部数据,可以直接执行
缺点:因为把所有内容都整合到程序中,所以编译生成的文件会比较大升级比较困难,需要把整个程序都重新编译
2、动态函数库:函数库文件通常以“*.so”扩展名结尾。这种函数库被程序调用时,并没有直接整合到程序当中,当程序需要用到函数库的功能时,在去读取函数库。在程序中只保存了函数库的指向
2、函数库管理
1)安装函数库
[root@localhost ~]# ldd -v 可执行文件名选项: -v 显示 详细版本信息查询系统中调用了那些函数库,命令如下[root@localhost ~]# ldd –v 可以执行文件名选项: -v 显示详细版本信息
查看ls命令下调用了那些函数库
[root@localhost ~]# ldd /bin/ls linux-vdso.so.1=> (0x00007fff60bff000) libselinux.so.1 =>/lib64/libselinux.so.1 (0x0000003a06a00000) librt.so.1 =>/lib64/librt.so.1 (0x0000003a06200000) libcap.so.2 =>/lib64/libcap.so.2 (0x0000003a07a00000) libacl.so.1 =>/lib64/libacl.so.1 (0x0000003a08a00000) libc.so.6 =>/lib64/libc.so.6 (0x0000003a05600000) libdl.so.2 =>/lib64/libdl.so.2 (0x0000003a05200000) /lib64/ld-linux-x86-64.so.2(0x0000003a04e00000) libpthread.so.0 =>/lib64/libpthread.so.0 (0x0000003a05a00000) libattr.so.1 =>/lib64/libattr.so.1 (0x0000003a08200000)如果安装了新的函数库,如何让系统识别,其实软件正常安装是不需要手工调整函数库的,他们都会被正常安装,但是没有正确安装,需要手工安装那也很简单,只需要把函数库放入指定位置,一般都放在“/usr/lib ”或“/lib ”中,然后把函数库所在目录写入“/etc/ld.so.conf” 文件。注意是函数库所在目录名写入不是函数库的文件名。比如:
[root@localhost ~]# cp *.so /usr/lib #把函数库拷贝入/usr/lib目录[root@localhost ~]# vi /etc/ld.so.conf #修改函数库配置文件include ld.so.conf.d/*.conf/usr/lib #写入函数库所在目录(其实/usr/lib目录默认已经被识别)然后使用ldconfig命令重新读取/etc/ld.so.conf文件,把函数库读入缓存就可以,命令如下:[root@localhost~]# ldconfig #从/etc/ld.so.conf中把函数库读入缓存[root@localhost~]# ldconfig –p #列出系统缓存中所有识别的函数库
补充:
date #查看系统时间date -s 20150506 #设定日期date -s 09:30:00 #设定时间du –sh 目录名 #统计目录大小 -s 和 -h 习惯单位