linux软件管理 源码包
源码包安装位置
安装在指定位置当中,一般是
/usr/local/软件名/
注意: 需要指定安装路劲为了便于卸载,因为源码包的是没有卸载命令的,它的的卸载方式就是把对应安装文件夹删除了。
所以如果不指定安装路径,源码包会被安装的到处都是,从而导致卸载时非常麻烦。
安装位置不同带来影响
rpm安装包
rpm包安装的服务可以使用系统服务管理命令(service)来管理,例如rpm安装的apache的启动方法是
/etc/rc.d/init.d/httpd start
service httpd start
源码包
源码包的安装的服务则不能被服务管理命令管理(service)来管理,因为没有安装到默认路径中。
所以只能用绝对路径进行服务管理
/usr/local/apache2/bin/apachectl start
源码包的安装过程
1) 安装准备
2) 下载源码包 (从官方网站下载)
安装注意事项
1)源代码保存位置 '/usr/local/src/'
2)软件安装位置'/usr/local/'
3)如何确定安装过程报错:
a) 安装过程停止
b) 出现error,warning或no提示
源码包安装过程
1) 下载源码包
2) 解压缩下载的源码包
3) 进入解压缩目录 (必须执行,后面的安装是操作的当前目录)
注意:查看目录下的'INSTALL'安装帮助文档
4)'./configure软件配置与检查' (configure基本上每个源码都有这个命令)
a) 定义需要的功能选项
b) 检测系统环境是否符合安装要求
c) 把定义好的功能选项和检测系统环境的信息都写入MakeFile文件,用于后续的编辑
执行
'./configure --prefix=/usr/local/apache2' 执行安装路径
5)'make 编译'
清除编译 'make clean'
6) 'make install'
编译安装
linux软件管理 源码包的更多相关文章
- Linux学习之源码包安装与脚本安装(十八)
Linux学习之源码包安装与脚本安装 目录 源码包与RPM包的区别 源码包安装 脚本安装 源码包与RPM包的区别 1.区别 安装之前的区别:概念上的区别 安装之后的区别:安装位置不同 源码包: 开源的 ...
- linux笔记:RPM软件包管理-源码包管理
源码包和rpm包的区别: 源码包安装过程: 编译安装前准备(执行./configure --prefix=路径 来配置软件的安装位置,以及做其他的配置和检查): 编译和安装(直接在目录下执行make和 ...
- Linux软件包(源码包和二进制包)及其区别和特点
Linux 下的软件包众多,而且几乎都是经 GPL 授权的,也就是说这些软件都免费,振奋人心吧?而且更棒的是,这些软件几乎都提供源代码(开源的),只要你愿意,就可以修改程序源代码,以符合个人的需求和习 ...
- 软件包管理:源码包管理-源码包与RPM包的区别
RPM会安装在默认位置,源码包会安装在指定位置. 绝大多数ROM包遵循此规范.写软件包是就固定好了. 主要影响体现在对服务的管理方法,服务的管理分三种:启动,重启动,停止. 启动时使用绝对路径来启动. ...
- Linux编译安装源码包的流程
流程: 1. 下载并解压源码包2. 运行:configure3. 编译:make4. 安装:make install 编译时需要注意一个原则:不要在解压的包中直接执行./configure.m ...
- linux软件管理之python包管理
Python包管理 ====================================================================================python ...
- Linux-软件包管理-源码包安装
rpm -q gcc 查看c语言编译器是否已经安装 在浏览器输入:http://mirror.bit.edu.cn/apache/httpd/ 下载2.2.29这个包 cd ~ 回到root目录 ls ...
- linux卸载一个源码包安装的软件的流程
完全卸载memcached的方法(CentOS) 我的大内存vps(centos系统)曾经安装过memcached,想给论坛提速,实际上不但没有明显效果,反倒耗费内存,看着碍眼,于是想卸载,于是网上各 ...
- linux下 python源码包解压报错
执行下面的命令 tar -zvxf Python.3.6.5.tgz 报错 gzip: stdin: not in gzip format tar: Child returned status 1 t ...
随机推荐
- Java数组转List
问题:当使用Arrays.asList(a)将数组转为List集合后,进行add操作时,报UnsupportedOperationException异常. 数组转List,直接使用Arrays的asL ...
- 理解Deadlock
问:为啥以下代码会产生死锁 public class Deadlock { static class Friend { private final String name; public Friend ...
- 2018-2019-1 20189203《Linux内核原理与分析》第二周作业
一.本周学习情况 我本周结合<庖丁解牛>教材学习了蓝墨云的视频课,主要学习内容如下: 1.学习了计算机的工作原理,深入理解了冯诺依曼体系结构. 2.学习了X86-32 CPU的寄存器 3. ...
- appium启动
from appium import webdriver from time import sleep capabilitise = { "platformName": " ...
- ES6知识总结
ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了.它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应 ...
- SqlServer父节点与子节点查询及递归
在最近老是用到这个SQL,所以记下来了: 1:创建表 CREATE TABLE [dbo].[BD_Booklet]( [ObjID] [int] IDENTITY(1,1) NOT NULL, [P ...
- 【 记忆网络 2 】 End-to-End Memory Network
继上一篇:Memory Network 1. 摘要 引入了一个神经网络,在一个可能很大的外部记忆上建立了一个recurrent attention模型. 该体系结构是记忆网络的一种形式,但与该工作中的 ...
- 【 记忆网络 1 】 Memory Network
2015年,Facebook首次提出Memory Network. 应用领域:NLP中的对话系统. 1. 研究背景 大多数机器学习模型缺乏一种简单的方法来读写长期记忆. 例如,考虑这样一个任务:被告知 ...
- 为什么notify(), wait()等函数定义在Object中,而不是Thread中
Object中的wait(), notify()等函数,和synchronized一样,会对“对象的同步锁”进行操作. wait()会使“当前线程”等待,因为线程进入等待状态,所以线程应该释放它锁持有 ...
- haproxy 初识
官方网站:http://www.haproxy.org 描述 HAProxy的是一个免费的,非常快速和可靠的解决方案,提供 高可用性, 负载均衡和代理对TCP和基于HTTP的应用程序.它特别适用于流量 ...