美文网首页
Chapter 22 软件安装:原始码与Tarball

Chapter 22 软件安装:原始码与Tarball

作者: 毛君 | 来源:发表于2017-12-11 13:00 被阅读0次

    1. 开放源码的软件安装不升级简介

    1.1 什么是开放源码、编译程序不可执行文件
    1.2 什么是函式库

    1.3 什么是 make 与 configure

    configure是检测环境的程序,检测完毕会建立makefile


    1.4 什么是 Tarball 的软件

    • tar打包
    • gzip压缩 *.tar.gz
      bzip2压缩 *.tar.bz2

    1.5 如何安装不升级软件

    2. 使用传统程序诧言迚行编译的简单范例

    2.1 单一程序:印出 Hello World

    • 一步到位:gcc hello.c 生产 a.out 通过 ./a.out执行
    • 两步:gcc -c hello.c 生成 hello.o
      gcc -o hello.o 生成 hello 通过 ./hello执行

    2.2 主、子程序链接:子程序的编译

    gcc -c thanks.c thanks_2.c
    gcc -o thanks(可执行程序名) thanks.o thanks_2.o (两个目标文件)

    Cflags 如 -O 和 -Wall

    • gcc -O -c thanks.c thanks_2.c
      大写O是为了产生优化
    • gcc -Wall -c thanks.c thanks_2.c
      Wall是为了产生更详细的编译过程信息

    2.3 呼叫外部函式库:加入连结的函式库

    • lxxx(库的名字)
    • L/path(上面指定的库的位置) 【默认会搜寻/lib和/usr/lib】
    • I/path(include中的库的位置)


    3. 用 make 宏编译

    3.1 为什么要用 make

    $@:代表目前的标的(target)

    3.2 makefile 的基本语法不变量

    4. Tarball 的管理与建议

    4.1 使用原始码管理软件所需要的基础软件

    • gcc等complier
    • make, autoconfig等可以检测用户操作系统环境,自行建立makefile
    • Kernel提供的Library和相关的include文件
      eg. Red hat(包含Fedora/CentOS等)中,这个核心相关的功能通常包含在kernel-source或kernel header这些软件中。

    PS:若已经安装好linux主机但缺乏上述软件,可以通过RPM(需原始光盘)或者yum(需要online)来安装。

    4.2 Tarball 安装的基本步骤

    • ./configure 生成makefile
    • make clean
    • make 将c编译成obj
    • make install

    4.3 一般 Tarball 软件安装的建议事项 (如何移除?升级?)

    升级可能不方便

    4.4 一个简单的范例、利用 ntp 来示范

    4.5 利用 patch 更新原始码

    5. 函式库管理

    5.1 静态与非静态函数库

    5.2 ldconfig 不 /etc/ld.so.conf
    5.3 程序的劢态凼式库解析: ldd

    1. 检验软件的正确性
      6.1 md5sum / sha1sum

    相关文章

      网友评论

          本文标题:Chapter 22 软件安装:原始码与Tarball

          本文链接:https://www.haomeiwen.com/subject/snibixtx.html