程序包的编译安装

程序包的编译安装

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

一、杂项知识整理

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时,可用开发工具autoconfautomake

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

相关推荐

  • 【N25第七周作业】

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@localhost ~]# mke2fs -t ext4 -b 2048 -m 2 -L MYDATA /dev/sdb1 mke2fs 1.42.9 (28…

    2017-04-13
  • 8.10作业

    1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小。 echo  "your host is `hostname` " echo  "ip address is `ifconfig | sed -n…

    Linux干货 2016-08-15
  • LVM逻辑卷管理器详解

    一、LVM简介 LVM是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauelshagen在Linux 2.4内核上实现。LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。…

    Linux干货 2016-09-05
  • 招聘Linux运维工程师

    岗位职责: 公司集群硬件的日常维护及管理 负责公司内网的服务器安装,部署和维护 监控服务器状态,发现问题并及时维护 负责产品发布上线 承担mangoDB的日常巡检 集群数据服务器的备份 编写服务器维护脚本,减少工作量,提高工作效率 任职要求: 1年以上Linux系统管理经验,精通Linux的管理和维护 能够熟练编排查运维过程中出现的服务故障,系统故障,网络故…

    Linux干货 2017-12-04
  • 配置路由实例

    路由的分类和管理 路由:跨网络通信; 路由分类:     主机路由     网络路由     默认路由 路由管理命令: route 命令是在本地 IP 路由表中显示和修改条目网络命令; 查看:route -n 添加:route add ro…

    Linux干货 2016-09-12
  • Infobright高性能数据仓库

    1.  概述         Infobright是一款基于独特的专利知识网格技术的列式数据库。Infobright简单易用,快速安装部署,使用中无需复杂操作,能大幅度减少管理工作;在应对50TB甚至更多数据量进行多并发复杂查询时,更能够显示出令人惊叹的速度。相比于MySQL,其查询速度提升了数倍甚…

    Linux干货 2015-04-05

评论列表(1条)

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

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