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

相关推荐

  • nfs 共享实验

    nfs全称为:network file system    网络文件系统 在Linux里可以理解为将一个文件夹变成共享文件夹,让其他用户都可以访问。而访问的主机其本地磁盘是没有存储文件的 创建方法如下 :     准备两台机器,一台当 client  另一台当server    &nbsp…

    Linux干货 2017-06-07
  • linux程序包管理

    对第五周学习的内容进行总结

    2018-01-01
  • 基本网络设置

    我们在上网的时候会遇到各种各样的问题,比如有时候网络不通,没有ip地址,或者ip地址有冲突等等,这就需要我们懂得一些网络的配置,方便以后使用。基本网络配置:主机名,ip地址,网关,DNS服务器。1、 主机名的配置第一种方法:在配置文件修改Centos7版本:vim /etc/hostname 改过配置文件后需要使其生效,命令为hostname centos7…

    2017-09-09
  • 马哥教育网络班21期+第9周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash while read line; do     if [[ $line&n…

    Linux干货 2016-09-06
  • 路由器解析路由表

    1.定义——>选择最佳路径;他只完成发送到下一个路径上就结束,任务到达就撤了(就像快递员一样,当他将物件发往到下一个目的地,那他的任务就结束了)2.分类:主机路由、网络路由、默认路由3.每个路由记录由四项主要组成部分目标地址:主机IP、网络ID号、未知地址(0.0.0.0)子网掩码接口interface:从哪个口发往目标地址 网…

    2017-09-05
  • 第五周小练习

    1显示当前系统上root,fedora或user1用户的默认shell egrep "^(root|user1|fedora)" /etc/passwd|cut -d ':' -f 1,7 2找出/etc/rc.d/init.d/functions文件中某个单…

    Linux干货 2016-12-12

评论列表(1条)

  • renjin
    renjin 2017-04-28 10:16

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