源码与tarball套件管理程序笔记摘录
1.file命令,用于查看文件的类型,
2.tarball套件解压后通常会有:源码文件、检测程序文件(可能是configure或config等文件名)、本套件的简要说明与安装说明。
3.tarball文件一般的扩展名会写成*.tar.gz或简写为*.tgz,以tar先打包,再压缩而成。
4.gcc –O –Wall
-O产生优化的参数,-Wall为产生更详细的编译信息。通常称-O、-Wall这些非必要的参数为标志FLAGS,因为使用的是GCC,所以也称为CCFLAGS。
5.#gcc sin.c –lm –L/lib –L/usr/lib
-l 说明加入某个函数库
m:表示libm.so的函数库,其中lib与扩展名(.a或.so)不需要写
-lm:表示使用libm.so或libm.a函数库
-L后面接的路径,上述内容表示:
“我要的函数库libm.so到/lib或/usr/lib中搜索”
6.大部分tarball软件安装的命令执行方式:
./configure 该步骤用于建立Makefile文件
make clean 为了避免前一次保留下来的数据可能影响到这一次编译的结果,通常执行这一步骤。
make :根据Makefile的默认工作进行编译。使用make就是要将源码编译成为可以执行的可执行文件,而这个可执行文件会放在当前所在的目录下,尚未安装到预定安装的目录中。
make install:根据Makefile文件中关于install的项目,讲上一步所编译完成的数据安装到指定的目录中,从而完成安装。
7.套件安装示例ntp.tar.gz:
1)解压缩,并阅读ntp下的readme与install
~]#cd /usr/local/src
Src]#tar –zxvf /root/ntp.tar.gz
//该步骤会让源码解开成为/usr/local/src/ntp目录
2)进入源码所在目录,并查看安装技巧
#cd /use/local/src/ntp
#vi INSTALL
3)开始设置参数,编译与安装
#./configure –help | more
//上面这个操作可以查看可用的参数
#./configure --prefix=/usr/loccal/ntp –enable-all-clocks –enable-parse-clocks
//其中,--prefix=/path表示这个软件将安装到哪个目录,没有指定,那么默认就是/usr/local
//这个操作会产生makefile或Makefile文件
//这个检测过程会显示在屏幕上,特别注意gcc的检查
//最重要的是需要成功建立Makefile(最后一行)
4)编译与安装
#make clean;make
#make check
#make install
//将数据安装在/usr/local/ntp下面
8.使用patch更新源码
diff命令用于比较两个文件的不同,patch file为补丁文件
#diff oldfile newfile
#diff –Naur oldfile newfile > file.patch
patch –p 数字 < patch_file
特别注意-p数字,那是与patch_file中列出的文件名有关的信息.
注意:patch更新源码,那么可能需要重新编译,并重新install才算成功更新,因为patch仅仅是更新了源码文件而已。
9.静态库函数,lib***.a;动态库函数lib***.so.
10. ldconfig与/etc/ld.so.conf
是否将动态函数库加载到内存中的命令。