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

相关推荐

  • Linux里的用户与组

    任何事务的进行都离不开管理,脱离了管理的系统将会是一团乱麻。今天就来讲讲Linux里的用户与组的管理 首先,用户与组不会凭空出现,必须得是系统本身或人为创建的 。     所以,系统创建的就叫系统用户.系统组,用户创建的就是普通用户.普通组。 useradd  创建用户 -u 创建用户并指定用户的UID -g…

    2017-07-30
  • 2016全球运维大会,优云蒋君伟演讲“CMDB+自动化的管理融合”成一大亮点

    2016全球运维大会于9月23日-24日在上海盛大开幕。作为国内运维行业的重量级大会,优云产品总监蒋君伟在自动化专场与来自全国各地的运维同行一起探讨、分享业内自动化运维的最佳实践。现场情绪热烈,气氛高涨,成为了本届全球运维大会的一大亮点。 全新梳理自动化与CMDB的融合之道 全球运维大会当天,运维自动化专场很多大牛针对自动化运维管理中的CMDB进行了激烈的讨…

    Linux资讯 2016-12-05
  • Gdevops 2017全球敏捷运维峰会【北京站】限时免费!

    Introduction 全球敏捷运维峰会 打造敏捷与运维领域标杆峰会! 2017年全球敏捷运维峰会(Gdevops, Global Devops Summit)将于2017年在成都、上海、北京、广州四城全面启动,本次Gdevops 2017全球敏捷运维峰会【北京站】由上海市经济和信息化委员会指导,上海市云计算产业促进中心、DBAplus社群主办,数十家媒体…

    Linux干货 2017-08-02
  • 进程和进程管理工具

    进程的相关定义以及相关工具的使用

    2017-12-17
  • Linux运维实战之2-2:bash的工作特性

    这次博文我们主要来谈谈bash的工作特性哈。 主要内容: bash是一种shell解释程序     bash工作特性之命令状态返回值 bash工作特性之命令行展开 bash工作特性之命令补全 bash工作特性之路径补齐 bash工作特性之命令引用 bash工作特性之命令别名 bash工作特性之文件名通配 bash工作特性之命令hash 问…

    Linux干货 2016-11-06

评论列表(1条)

  • renjin
    renjin 2017-04-28 10:16

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