Chinaunix首页 | 论坛 | 博客
  • 博客访问: 26270
  • 博文数量: 17
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 198
  • 用 户 组: 普通用户
  • 注册时间: 2012-11-10 23:41
个人简介

记录点滴……

文章分类

全部博文(17)

文章存档

2018年(1)

2015年(3)

2014年(11)

2013年(2)

我的朋友

分类: LINUX

2014-10-14 15:12:25

安装基本步骤

    1.获取当前软件源码包

        在相关官网下载对应版本的软件源码;并进行解压缩操作就产生了一个目录,该目录包含了源码、配置脚本(configure)以及相关的安装帮助说明。

    2.建立makefile文件

        ./configure
        该步骤主要是生成makefile文件,但还会检查当前的操作系统以及相关软件属性。
        该脚本还支持后接参数来设置之后步骤相关的选项。输入 ./configure --help|more可查看支持的参数内容。
        下面我们讨论一下makefile的基本语法与变量:
        makefile规则
            target : prerequisites ...
                command(注意:该行一定要以一个tab键开头)
        说明:target也就是一个目标文件,可以是中间文件,可执行文件或则一个标签;
                  prerequisites就是要生成那个target所需要的文件或是目标;
                  command就是make需要执行的命令。
        这是一个文件的依赖关系,也就是说,target这一个或多个目标文件依赖于prerequisites中的文件,其生成规则定义在command中。
        makefile中使用的变量: 
            在makefile我们可以使用变量,也就是一个字符串,可以理解成C语言中的宏,使用时,直接使用$符号来获取变量的内容;
        我们可以自定义变量,也可使用makefile自带变量;其中常见的是@字符,经常放在命令前面,
        如@echo ...表示打印相关信息,如果不加@则表示echo命令也会显示出来,而@的作用是不打印命令名,只输出echo后面的内容。
        下面我们对有关的自动化变量进行简单的说明:
            $@------目标文件集合中每一个文件
            $<------依赖文件集合中每一个文件
        如 gcc -c $< -o $@,这个指令表示把依赖文件集合中的所有文件编译为目标文件集合中对应的中间代码文件(对应关系为同名)。            

    3.使用make进行编译

        make
        make的作用是根据源码得到可执行文件;下面简单地说明一下make是如何工作的:
            1、make会在当前目录下找名字为“Makefile”或“makefile”的文件;
            2、如果找到,则会找文件中的目标文件,并把该文件作为最终的目标文件。
            3、如果当前目录下该目标文件不存在,则根据依赖关系生成该文件。

    4.使用make install进行安装

        make install
        根据步骤3得到的可执行文件,自动进行软件的安装。

软件升级

    很多的软件开发商在更新了源码后,都会发布一个patch文件,我们可以利用这个文件升级软件:
    patch指令
        基本语法:   patch     -p数字    <    patch文件
    说明:-p数字是与patch文件里面列出的文件名有关的信息,如文件中第一个行文件名为/home/harron/script/filename,对应关系为:
                0    /home/harron/script/filename
                1    home/harron/script/filename
                ...
                4    filename    
                由此我们可以看出,该数字用来表示比较文件所在的目录。
        如果更新出错的话,还可以恢复之前的版本:
            patch     R     <     patch文件
    优点
        
不用重新下载源码,省去了重复安装的步骤;只是修改已更新的源码文件,大大节约了make时间;
    缺点
        事先必须确认patch文件是否存在;只能更新相邻的软件版本;


阅读(180) | 评论(0) | 转发(0) |
0

上一篇:Shell script

下一篇:内核编译

给主人留下些什么吧!~~