编译安装与make编译的处理流程

编译安装

编译安装,使用的是源代码,根据机器自身的硬件、内核、环境镜进行编译生成二进制文件,因为针对的是本机软硬件环境编译生成的二进制程序运行起来理论上更好,更节省资源。

大体上编译安装分为3个阶段:

  • 配置(configure): 指定编译参数,使得编译器适应环境,编译出环境能运行的机器码,配置信息保存在 configure 的脚本文件中,编译器通过脚本来得到编译参数。

    configure 基于不同系统有不同参数的默认默认值。

  • 编译(compilation): 编译生成机器码,转码后的文件称为 对象文件(object file)
    make (gcc) 调用 gcc 执行编译的过程依赖于配置文件 makefile

  • 安装(installation): 上一步中链接生成的可执行文件在内存中进行,在内存中有可执行文件,安装就是将可执行文件 (连带相关的数据文件) 拷贝到安装目录中。


make 编译的处理流程

为了节省开发效率开发者会使用 应用程序编写接口(API)函数库 的特殊程序来解决问题简称为函数库或者库,这是一种特殊的程序文件,提供了大量的函数功能程序段。

在Linux系统中,函数库包含两种形式:共享库和静态库。

共享库在程序运行时为其提供所需的函数,当程序运行时共享库必须存在于系统中切能被系统找到并使用。

静态库在编译程序期间就将各种函数库编译到程序中,程序运行时即使静态库不存在也可以正常调用其中的函数。

实际的系统中,为了能够让应用程序的功能不断丰富,程序设计通常会使用配置文件来实现程序的灵活性并通过使用资源文件来扩展程序的功能。大多数的配置文件是为自身程序设计,也有一些事公共的配置文件能被多个程序共用,这类配置文件和各种资源文件统称为辅助文件。

系统=内核+函数库+交互环境+应用程序+辅助文件

基本的Linux系统架构,由内核驱动整个系统,各种函数库提供各种功能的支持 ,各种应用程序及常见命令在辅助文件的帮助下通过交互环境与用于进行交互。

posted @ 2024-08-12 18:49  takenika  阅读(128)  评论(0)    收藏  举报