程序包的编译安装

程序包的编译安装

    程序包的编译安装是比较重要的内容,在之后的网络知识以及服务的配置等学习方面也发挥着重要作用,是我们的必备技能。

一、杂项知识整理

1、which –skip-alias:跳过别名,直接查看原命令

[root@localhost ~]# which --skip-alias ls
/usr/bin/ls
[root@localhost ~]# which ls
alias ls='ls --color=auto'
/usr/bin/ls

2、关于匿名函数:

echo "a" && type /aaa && echo "bbb" || {echo "aaa";exit 1;}

要使echo和exit作为同条件下的命令依次运行,使用匿名函数,exit后面也需要;以表明函数的括号为下一行。

使用小括号便使用了子进程,若exit之前使用&&则会使前面echo "bbb"命令执行正确之后直接退出

[root@localhost ~]# echo "a" && type /testdir/shelltest/mysh1.sh  && echo "bbb" || echo "aaa" && exit 1
a
/testdir/shelltest/mysh1.sh 是 /testdir/shelltest/mysh1.sh
bbb
登出

正确如下:

[root@localhost ~]# echo "a" && type /aaa && echo "bbb" || { echo "aaa" ; exit 1; }
a
-bash: type: /aaa: 未找到
aaa
登出

3、测试赋值:

[root@localhost ~]# [ aaa=bbb ]
[root@localhost ~]# echo $?
0
[root@localhost ~]# echo $aaa

4、rpm损坏:

重启系统,使用光盘启动,进入救援模式,执行命令rpm -ivh –root=/mnt/sys/image

必须制定root位置,否则会安装到光盘的虚拟根下。

5、主机传输:[root@localhost ~]# scp /testdir/11111.txt 10.1.252.95:/root

 

二、具体命令及事例

1、编译安装的步骤:

注意:安装之前查看INSTALL及README等说明文档。

◆安装开发包组,Development Tools;

◆用tar解压,在其目录内./configure,加选项;

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

检查依赖到的外部环境;

◆make:根据makefile文件,构建应用程序;

◆make install:复制文件到相对路径。

当没有configure和make时,可用开发工具autoconf和automake。

2、configure脚本:

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

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

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

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

optional features可选特性:

–disable-FEATURE

–enable-FEATURE

optional packages 可选包

–with-PACKAGE 依赖包

–without-PACKAGE禁用依赖关系

3、安装后的配置

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

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

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

导入库文件路径

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

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

让系统重新生成缓存:

ldconfig [-v]

导入头文件:

基于链接的方式实现

ln -sv,目录在/usr/include

导入帮助手册

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

添加一个新的MANPATH

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

赞 (0)
SilencePavilionSilencePavilion
上一篇 2016-08-24 21:21
下一篇 2016-08-24 21:21

相关推荐

  • Homework Week-12 LAMP部署

    1、请描述一次完整的http请求处理过程;     http全称超文本传输协议,属于应用层协议;常见客户端应用是各种浏览器。     一次服务器端完整http请求处理过程:     (1)建立或处理连接:接收请求或拒绝请求;     (2)接收请求:接收来自于…

    Linux干货 2016-12-05
  • 编译安装httpd-2.4.9及新特性详解

    前言 前面我们讲解了httpd在CentOS6上(httpd-2.2)的相关功能配置,而CentOS7上采用了httpd-2.4的版本,那么httpd-2.4增加了哪些特性呢?接下来让我们在CentOS6.6上手动编译安装一下httpd-2.4.9,看一下和httpd-2.2有什么不同,顺便补充说一下httpd的其它功能。 环境及新特性介绍 环境介绍 系统环…

    Linux干货 2015-04-15
  • N25-第一周作业

    一,描述计算机的组成及其功能。        计算机(Computer)是一种能够按照事先存储的程序,自动、高速地进行大量数值计算和各种信息处理的现代化智能电子设备。由硬件和软件所组成,两者是不可分割的。        计算机的组成分为控制…

    Linux干货 2016-12-03
  • Centos 7 DNS配置及理论详解

    DNS是什么及BIND讲解内容 域名系统(英文:Domain Name System,缩写:DNS)是internet的一项服务。它作为将域名和IP地址相互映射服务,能够使人更方便地访问互联网。DNS使用TCP和UDP端口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。讲解内容:    DNS名称解析方…

    Linux干货 2016-04-25
  • awk,systemctl,破解7root口令

    awk -F 指明输入时用到的字段分隔符 默认空格为分隔符 -v 自定义变量 基本格式:awk [options] 'program' file $1,$2..$n称为域标识,$0为所有域。 文件的每一行称为记录 awk '{print}' /etc/passwd 默认 print $0 显示全段   awk…

    Linux干货 2016-10-05
  • 文件查找命令之locate、find简析

    文件查找命令之locate、find简析    在工作中经常会在文件系统上查找符合条件的文件,今天学习了文件查找命令,在此简析locate和find两个文件查找工具。 一、杂项知识整理 1、find的选项-user的实质是通过UID查找,如果两个用户的UID相同,其会显示两个用户的所有符合条件的文件。 2、查找时-name "*…

    Linux干货 2016-08-15

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-26 10:12

    内容整体很完整,如果加上实验性操作和操作过程中报错信息处理办法的经验呢总结会让文章整体更有说服力,突显用心