软件安装:源码与Tarball

一:源码

linux系统运行的二进制文件

linux上的程序都是可以查看源码的

可以通过高级语言编写程序-编译成系统识别的语言-执行程序

一些概念,函数库,个人理解就是编译好的程序,可以直接在程序里面调用,类似计算机语言程序里面的函数调用,开始调用到最后返回结果。可以想象java里面的lib库下面的*.jar包

make命令

软件开发商提供检测程序测试环境是否支持(包括内核版本,依赖的库等),检测文件的名字一般configure或者config。

涉及到的几个概念:软件源码,检测程序,gcc编译程序,make,makefile可执行的二进制文件

二:Tarball

简单将就是将源码先打包在压缩。*.tar.gz或者*.tgz,   还有升级版的*.tar.bz2

三:Hello,World

编写程序.c-生成编译文件.o-生成可执行文件,和java语言编译差不多,都是把源码编译下生成可执行文件的过程

软件安装:源码与Tarball_第1张图片

编译生成o文件

生成可执行文件

测试结果:

四:说明

主程序,子程序,主程序里面调用子程序,例如,p1,p2子程序,gcc -c编译生成p1.o,p2.o,当p2源码有改动时候,我们自需要重新gcc -c p2生成新的p2.o文件,然后在gcc -o  目标文件 p1.o,p2.o即可,对于没有改动的p1.c不用重新编译成p1.o文件,之前编译成的可以直接使用

软件安装:源码与Tarball_第2张图片

软件安装:源码与Tarball_第3张图片

gcc -c

gcc -o

重新编写p2.c代码

软件安装:源码与Tarball_第4张图片

重新生成p2.o文件

软件安装:源码与Tarball_第5张图片

将修改后的p2.o 和之前编译成*.o文件再一次编译成可执行文件

测试结果下图

软件安装:源码与Tarball_第6张图片

整体感觉,和高级语言对比,感觉没啥区别,同样的道理。

你可能感兴趣的:(linux,运维,服务器)