Linux程序包编译安装

程序包编译安装:

     Application-VERSION-release.src.rpm–> 安装后,使用rpmbuild命令制作成二进制格式的rpm包,而后再安装

     源代码–>预处理–>编译–>汇编–>链接–>执行

     源代码组织格式:

多文件:文件中的代码之间,很可能存在跨文件依赖关系

CC++make 项目管理器

configure –> Makefile.in –>
makefile

java: maven

C语言源代码编译安装三步骤:

1./configure

(1) 通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及makefile.in文件生成makefile

(2) 检查依赖到的外部环境,如依赖的软件包

2make 根据makefile文件,构建应用程序

3make install 复制文件到相应路径

开发工具:

autoconf: 生成configure脚本

automake:生成Makefile.in

      注意:安装前查看INSTALLREADME

开源程序源代码的获取:

官方自建站点:

apache.org (ASFApache Software Foundation)

mariadb.org  

代码托管:

SourceForge.net

Github.com

code.google.com

      c/c++编译器: gcc(GNU C Complier)

第一步:configure脚本

选项:指定安装位置、指定启用的特性

–help: 获取其支持使用的选项

选项分类:

安装路径设定:

–prefix=/PATH: 指定默认安装位置,默认为/usr/local/

–sysconfdir=/PATH:配置文件安装位置

System types:支持交叉编译

Optional Features: 可选特性

–disable-FEATURE

–enable-FEATURE[=ARG]

Optional Packages: 可选包

–with-PACKAGE[=ARG],依赖包

–without-PACKAGE,禁用依赖关系

第二步:make

第三步:make
install

安装后的配置:

(1) 二进制程序目录导入至PATH环境变量中

编辑文件/etc/profile.d/NAME.sh

export PATH=/PATH/TO/BIN:$PATH

(2) 导入库文件路径

编辑/etc/ld.so.conf.d/NAME.conf

添加新的库文件所在目录至此文件中

让系统重新生成缓存:

ldconfig[-v]

(3) 导入头文件

基于链接的方式实现:

ln -sv

       (4) 导入帮助手册

编辑/etc/man.config|man_db.conf文件

添加一个MANPATH

原创文章,作者:MFX,如若转载,请注明出处:http://www.178linux.com/74212

(2)
MFXMFX
上一篇 2017-04-25
下一篇 2017-04-25

相关推荐

  • 马哥教育网络班21期-第八周课程练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 设备 使用场景 功能 区别 集线器 局域网 共享同一网络 不能分隔冲突域 网桥 局域网 连接不同网段,拓展局域网 端口少,可以分隔冲突域 二层交换机 局域网 连接不同局域网段,数据交换 端口更多,可以分隔冲突域,速率更快 三层交换机 局域网,广域网 路由,高速数据交换,分隔广播域…

    Linux干货 2016-09-08
  • Linux学习笔记(第三篇)

    N21_Keen_第三周博客 1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 who | cut -d " " -f 1 | sort -u 2、取出最后登录到当前系统的用户的相关信息。 last…

    Linux干货 2016-08-15
  • 第3周作业

    一、列出当前系统上的所有已经登录的用户的用户名 [root@bogon tmp]# who | cut -d ” ” -f1 | sort -urootwing[root@bogon tmp]# who | cut -d ” ” -f1 | uniqrootwing 二、取出最后登录到当前系统的用户相关信息 […

    Linux干货 2017-07-25
  • Nginx的编译安装

    nginx.html Nginx的编译安装 一、Nginx的特点 二、获取并编译Nginx 三、配置主页面 四、配置编译文件时的选项及模块 一、Nginx的特点 1、Nginx 专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率 。它支持内核 Poll 模型,能经受高负载的考验,有报告表明能支持高达 50,000 个并发连接数。 2、Nginx 具…

    Linux干货 2016-03-20
  • N25第三周作业

    一、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@centos01 ~]# who | cut -d " " -f1 | uniq -u root qufudcj 二、取出最后…

    Linux干货 2016-12-26

评论列表(1条)

  • renjin
    renjin 2017-04-28 10:16

    主要对linux下源码包的安装进行了介绍,可以把学的rpm包管理,yum源的配置与使用一起总结进来。