- 在Linux系统上,一个文件能不能被执行要看有没有可执行权限x,不过,Linux系统上真正识别的可执行文件其实是二进制程序,例如/usr/bin/passwd,/bin/touch这些文件即为二进制程序。
- 测试一个文件是不是二进制文件用file命令
- 使用vim编写程序,写好的程序就是源代码,这个程序代码文件其实就是一般的纯文本文件,完成源代码文件的编写之后,就要将文件经过编译器的编译与链接之后产生一个可执行的二进制程序。
- 开放源代码:就是程序代码,给人类看的
- 编译器:将程序代码转化为机器看得懂的语言
- 可执行文件:经过编译器变成的二进制程序
- 函数库分为静态与动态函数库
- 函数库:就类似子程序的角色,是可以被调用来执行的一段功能函数
- 使用make命令进行编译过程的简化
- 当自行maek时,make’会在当前的目录下查找makefile(或Makefile)这个文本文件,而makefile里面则记录了源代码如何编译的详细信息,make会自动地判别源代码是否已经变动了,而自动更新执行文件。
- 将软件的原代码文件先以tar打包,再以压缩技术来压缩,通常是gzip,Tarball文件一般的扩展名是*.tar.gz或简写成*.tgz,
*
.tar.bz2,*
.tar.xz - Tarball是一个软件包,将它解压之后,里面的文件会有:源代码文件,检测程序文件(可能是configure或config等文件),本软件的简易说明与安装说明(INSTALL或README)
- 软件更新的方法可以分为两大类:1直接以源代码通过编译来安装与升级2直接以编译好的二进制程序来安装与升级
- Tarball安装流程:
- 1将Tarball由厂商的网站下载
- 2将Tarball解开,产生很多的 源代码文件
- 3开始以gcc进行源代码的编译,会产生目标文件object files
- 4然后以gcc进行函数库、主、子程序的链接,以形成主要的二进制文件
- 5将上述的二进制文件以及相关的配置文件安装至自己的主机上面
- 编译时加入额外函数库链接的方式:gcc -lm
- -l:是加入某个函数库library的意思
- m:是libm.so这个函数库,其中,lib与扩展名.so不需要写,-lm表示使用libm.so这个函数库的意思。
- 环境变量使用规则:1make命令行后面加上的环境变量为优先2makefile里面指定的环境变量为第二3shell原本有的环境变量为第三
- 利用patch更新源代码
- ldd:程序的动态函数库解析
- 通过MD5、SHA-1、SHA-256的编码可以判断下载的文件是否为原厂商所发布的文件。
鸟哥Linux第二十一章-软件安装:源代码与Tarball简记
最新推荐文章于 2020-09-09 16:02:58 发布