简单说明CentOS源码安装程序
第一步、安装依赖包。一般官网会有依赖关系,没有就网上搜索一下。
第二步、下载源码包,上传至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源码安装程序的更多相关文章
- CentOS源码安装QT
在VirtualBox上的CentOS下安装qt-everywhere-opensource-src-4.8.4 ,执行 ./confiure时失败,失败信息为:Basic XLib function ...
- CentOS源码安装Wireshark
(2019年2月19日注:这篇文章原先发在自己github那边的博客,时间是2016年8月25日) Wireshark为网络管理员常用的一个网络管理工具,通过使用这个软件,我们可以对本机网卡上的经过的 ...
- CentOS 源码安装MySQL5.7
一.安装方式源码安装,源码包名称mysql-boost-5.7.27.tar.gz,此版本包含boost库,在解压后的boost路径下.安装时,可以-DDOWNLOAD_BOOST=1 -DWITH_ ...
- linux(centos)源码安装git
最近使用一个开源库,部署的的时候需要用git克隆依赖库.刚好系统没安装git.就尝试了源码安装git. 源码下载地址:http://codemonkey.org.uk/projects/git-sna ...
- CentOS源码安装 Tomcat/8.0.24
依个人的习惯,喜欢将源码安装在/usr/local这个目录下面: 第一步:下载源码 wget http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.2 ...
- Centos源码安装Python3
CentOS7默认安装了python2.7.5,当需要使用python3的时候,可以手动下载Python源码后编译安装. 下载python(https://www.python.org/ftp/pyt ...
- centos 源码安装php5.5
系统环境: CentOS 6.5 / 7.0 x86_64 Fedora 20 x86_64下载 PHP 源码包 # wget http://cn2.php.net/distributions/php ...
- CentOS源码安装搭建LNMP全过程(包括nginx,mysql,php,svn)【转】
转自:http://blog.csdn.net/yanzi1225627/article/details/49123659 服务器环境为:CentOS6.5 64位 目标:搭建LNMP(Linux + ...
- centos 源码安装git
(1) 添加rpmforge源 wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686 ...
随机推荐
- 三星 C7恢复 出厂设置
http://jingyan.baidu.com/article/c14654134f0fd20bfcfc4c1e.html
- 【BZOJ】1584: [Usaco2009 Mar]Cleaning Up 打扫卫生
[算法]DP+数学优化 [题意]把n个1~m的数字分成k段,每段的价值为段内不同数字个数的平方,求最小总价值.n,m,ai<=40000 [题解] 参考自:WerKeyTom_FTD 令f[i] ...
- 【转载】Lua中实现类的原理
原文地址 http://wuzhiwei.net/lua_make_class/ 不错,将metatable讲的很透彻,我终于懂了. --------------------------------- ...
- vue调试工具
在进行vue项目开发的时候,免不了要进行调试,谷歌插件vue-devtools可以帮忙 步骤 步骤一: 到谷歌商店搜索"vue-devtools"下载 步骤二: 在chrome的扩 ...
- Python模块学习 - click
Click模块 click模块是Flask的作者开发的一个第三方模块,用于快速创建命令行.它的作用与Python标准库的argparse相同,但是,使用起来更简单. click是一个第三方库,因此使用 ...
- python自动开发之第二十五天
一.组合搜索 参考: http://www.cnblogs.com/ccorz/p/5985205.html 二.JSONP 1.在同源策略下,在某个服务器下的页面是无法获取到该服务器以外的数据的,但 ...
- LeetCode 19 Valid Parentheses
Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the inpu ...
- [device tree] interrupt mapping example
This is for Devicetree Specification Release 0.1 Interrupt Mapping Example p19 在講解前,先帶進一些 PCI 的基礎觀念 ...
- (二十一)Makefile例子
ROOT_PROJECT = .DIR_INC = -I$(ROOT_PROJECT)/include -I$(ROOT_PROJECT)/include/NE10 DIR_BIN = $(ROOT_ ...
- ACE_INET_Addr类 API
ACE_INET_Addr类,在这个ACE_网络框架中,应该是比较重要的辅助类,该类主要封装了C SOCKET 的地址对象,通过外观封装的模式,把struct sockaddr_in封装在内.方便用户 ...