软件安装:源码与Tarball

2023-12-14 16:55:29
一:源码

linux系统运行的二进制文件

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

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

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

make命令

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

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

二:Tarball

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

三:Hello,World

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

编译生成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文件,之前编译成的可以直接使用

gcc -c

gcc -o

重新编写p2.c代码

重新生成p2.o文件

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

测试结果下图

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

文章来源:https://blog.csdn.net/wudongfang666/article/details/134996457
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。