第一步、安装依赖包。一般官网会有依赖关系,没有就网上搜索一下。

第二步、下载源码包,上传至CentOS服务器

第三步、解压缩

第四步、进入源码文件夹

第五步、执行./configure,这一步主要是为了生成Makefile文件,当然还有一些其他功能,例如--prefix=PATH指定安装目录,更多内容可以./configure --help查看。如果报缺少依赖包,请安装依赖包,再次尝试。运行完后,可以使用echo $?,如果返回0则没有问题。

第六步、执行make,后面可以跟-j,提升速度。例如make -j 4,这条命令的意思是4进程(核)同时编译,将源码转为可执行二进制文件。

第七步、 执行make install,这一步是安装。按Makefile定义的路径安装,一般同时会告诉你程序安装到哪里了。

另外,还有一个make clean,用于清除产生的object和Makefile文件。使用场景:想要重新执行./configure时,使用make clean。

扩展:

1)删除源码安装的软件

  可以在源码文件夹下尝试make uninstall。

  如果make uninstall没用,那么只能删除安装目录。这时,在生成Makefile时指定路径就非常有效。

2)找不到依赖包时,可以尝试以下方式查找

  以ext2fs library为例

  第一、去光盘镜像下Packages目录下查找。先看ls ext2fs*,没有再试试ls *ext2fs*,还没有减少一半试试ls *2fs*(或ls *ext*,但找下来发现这个不对)。另外缺少的是lib部分,最后可以确定需要的包。

  第二、可以使用yum search ext2fs查找匹配的包文件。

  第三、如果以上都没有找到需要的库,可以到www.rpmseek.com/index.html网站上搜索下载

3)如果已经安装了依赖包,但./configure还是提示没有依赖包

  这时候需要安装下该依赖包的devel部分(即XXX-devel)。这里面一般有大量的.h结尾的头文件。

参考:https://www.cnblogs.com/findumars/p/8206930.html

简单说明CentOS源码安装程序的更多相关文章

  1. CentOS源码安装QT

    在VirtualBox上的CentOS下安装qt-everywhere-opensource-src-4.8.4 ,执行 ./confiure时失败,失败信息为:Basic XLib function ...

  2. CentOS源码安装Wireshark

    (2019年2月19日注:这篇文章原先发在自己github那边的博客,时间是2016年8月25日) Wireshark为网络管理员常用的一个网络管理工具,通过使用这个软件,我们可以对本机网卡上的经过的 ...

  3. CentOS 源码安装MySQL5.7

    一.安装方式源码安装,源码包名称mysql-boost-5.7.27.tar.gz,此版本包含boost库,在解压后的boost路径下.安装时,可以-DDOWNLOAD_BOOST=1 -DWITH_ ...

  4. linux(centos)源码安装git

    最近使用一个开源库,部署的的时候需要用git克隆依赖库.刚好系统没安装git.就尝试了源码安装git. 源码下载地址:http://codemonkey.org.uk/projects/git-sna ...

  5. CentOS源码安装 Tomcat/8.0.24

    依个人的习惯,喜欢将源码安装在/usr/local这个目录下面: 第一步:下载源码 wget http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.2 ...

  6. Centos源码安装Python3

    CentOS7默认安装了python2.7.5,当需要使用python3的时候,可以手动下载Python源码后编译安装. 下载python(https://www.python.org/ftp/pyt ...

  7. centos 源码安装php5.5

    系统环境: CentOS 6.5 / 7.0 x86_64 Fedora 20 x86_64下载 PHP 源码包 # wget http://cn2.php.net/distributions/php ...

  8. CentOS源码安装搭建LNMP全过程(包括nginx,mysql,php,svn)【转】

    转自:http://blog.csdn.net/yanzi1225627/article/details/49123659 服务器环境为:CentOS6.5 64位 目标:搭建LNMP(Linux + ...

  9. centos 源码安装git

    (1) 添加rpmforge源 wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686 ...

随机推荐

  1. kafka命令总结

    ./kafka-console-consumer.sh  --bootstrap-server IP:9092  --topic user-asset-change-v1 --partition 2  ...

  2. centos6.4 yum安装nginx+mysql+php

    1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport ...

  3. 父元素与子元素之间的margin-top问题(css hack)

    hack: 父元素的盒子包含一个子元素盒子,给子元素盒子一个垂直外边距margin-top,父元素盒子也会往下走margin-top的值,而子元素和父元素的边距则没有发生变化. hytml代码: &l ...

  4. Nodejs mac版安装

    Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js uses an event-driven ...

  5. 9.1docker容器 跨主机连接

    open vswitch 实现跨主机容器连接          准备条件   将本地的网卡 与新建的网桥建立连接   配置 docker 启动项       weave实现跨主机容器连接   null

  6. Android开发中的各种尺度单位

    px 像素(pixel),表示屏幕上一个物理像素点 不建议直接使用 px 绘制UI,因为受像素密度的影响,以 px 为单位绘制的UI在不同手机上显示的实际大小会不同 dp   (用于定义控件大小) 密 ...

  7. 使用EL表达式需要注意的

    1.表达式与Java无关,表达式都是以${开始,以}结束. 2.EL访问java变量不能直接访问,因为得不到数据,要访问数据,需要将其放到作用域中.而使用<%=java变量%>可以访问ja ...

  8. 11个让你吃惊的linux命令

    我已经用了十年的Linux了,通过今天这篇文章我将向大家展示一系列的命令.工具和技巧,我希望一开始就有人告诉我这些,而不是曾在我成长道路上绊住我. AD: 我已经用了十年的Linux了,通过今天这篇文 ...

  9. 报错注入遇到ERROR 1242 (21000): Subquery returns more than 1 row解决方案

    我的SQL语句是这样写的. mysql> select 1,2,3 and updatexml(1,concat(1,(select user from mysql.user),1),1);ER ...

  10. exit() _exit() 函数区别

    exit(): --stdlib.h (1) 所有使用atexit()注册的函数,将会被以注册相反的顺序调用: (2) 所有打开的输出流被刷新,并且关闭流: (3) 使用tmpfile()创建的文件将 ...