Linux中服务器软件为什么需要编译安装

为什么服务器软件需要编译安装?一个流传很广的说法是编译安装性能更好,其实这是个谣言

服务器CPU事实已经被Intel垄断了,就那么几种型号,编来编去生成的机器码是一样的。Intel宣传自己的编译工具Intel C++ Compiler 比GCC编译出来性能要提升10%-20%,这就是一广告,生产环境很少用人用它,何况它还要收费

性能真不是问题,比如 strip 命令可以大大减小可执行文件的size,但是我装过几千遍软件,都没有见有人在安装脚本里面使用。

软件需要编译安装的真实理由有如下3点:

1.软件在编译期间需要配置,比如说nginx,需要在编译的时候指定包含哪些module,php,apache 也是一样。
同样的是数据库,mysql 通过编译安装,因为要定制存储引擎(是否支持innodb .. ),而sqlite却绝少有人编译,都是直接下载二进制文件来用。

2.软件需要统一安装路径,每个team都会自己的安装目录约定,有些喜欢装在 /opt/下面,有些喜欢装在 /usr/local/ ,编译安装可以方便的指定这些路径(configure --prefix=xxx )

3.需要最新的版本,软件仓库的版本一般都比较低,这个理由其实不充分,生产环境倾向保守,不追求最新版本,但是对于geek来说,这可能是最重要的原因
弄明白原因之后,就很容易判断编译还是下载:

nginx/apache/php/mysql 编译安装
python/ruby/java 直接下载

(0)

相关推荐

  • Linux 环境下编译安装MySQL5.6的笔记记录

    一.首先搭建好Linux环境,我这边使用的是redhat enterprise 6.5,并且建议磁盘划分逻辑卷,以便后期的扩容工作. 二.环境搭建好了之后,我们就要去准备MySQL的安装文件,到现在为止mysql仍然是免费开源,可以直接在官网下载,大家可以自行访问官网去下载, 网址是:https://www.mysql.com/downloads/ ,当然下载前大家需要先去注册一个Oracle账户,然后选择社区免费版进行下载. 三.安装依赖包以及cmake编译工具 yum install -y

  • Linux下源码编译安装配置SVN服务器的步骤分享

    说明: SVN(subversion)的运行方式有两种: 一种是基于Apache的http.https网页访问形式: 还有一种是基于svnserve的独立服务器模式. SVN的数据存储方式也有两种:一种是在Berkeley DB数据库中存储数据:另一种是使用普通的文件FSFS存储数据. 由于Berkeley DB方式在使用中有可能锁住数据,一般建议使用FSFS方式更安全. 实现目的: 以svnserve的独立服务器模式,使用FSFS数据存储方式源码编译安装配置SVN服务器. 具体操作: 操作系统

  • Linux下编译安装php libevent扩展实例

    原本想尝试一下PHP编写高性能网络服务,需要安装libevent扩展,没想到让人很费了点脑袋 先下载libevent扩展: http://pecl.php.net/package/libevent 解压后,开始编译 复制代码 代码如下: $ cd libevent-version $ /usr/local/php/bin/phpize $ ./configure --with-php-config=/usr/local/php/bin/php-config 结果马上报错了,错误显示为re2c版本

  • Linux编译安装vsftpd服务器(本地用户验证方式)

    Linux vsftpd编译安装和配置允许本地用户登录FTP 1.下载vsftpd源码 wget https://security.appspot.com/downloads/vsftpd-2.3.4.tar.gz 2.编译vsftpd源码 64位的系统编译之前先要执行cp /lib64/libcap.so.1 /lib/libcap.so.1命令: 复制代码 代码如下: tar xzvf vsftpd-2.3.4.tar.gz cd vsftpd-2.3.4 make make install

  • linux下编译安装memcached服务

    系统:Ubuntu 13.10 第一步:安装libevent-dev $aptitude search libevent-dev $aptitude install libevent-dev 第二步:下载memcached并安装 官网地址:http://memcached.org/ $wget -c http://www.memcached.org/files/memcached-1.4.17.tar.gz $tar -zxvf memcached-1.4.17.tar.gz $cd memca

  • Linux下nginx编译安装教程和编译参数详解

    一.必要软件准备1.安装pcre 为了支持rewrite功能,我们需要安装pcre 复制代码 代码如下: # yum install pcre* //如过你已经装了,请跳过这一步 2.安装openssl 需要ssl的支持,如果不需要ssl支持,请跳过这一步 复制代码 代码如下: # yum install openssl* 3.gzip 类库安装 复制代码 代码如下: yum install zlib zlib-devel 4.安装wget 下载nginx使用,如果已经安装,跳过这一步 复制代码

  • Linux下编译安装MySQL-Python教程

    1.下载mysql-python 官网地址:http://sourceforge.net/projects/mysql-python/ 2.安装mysql-python 复制代码 代码如下: # tar -zxvf MySQL-python-1.2.3.tar.gz # cd MySQL-python-1.2.3 # whereis mysql_config mysql_config: /usr/bin/mysql_config /usr/share/man/man1/mysql_config.

  • Linux下编译安装Mysql 5.5的简单步骤

    首先是安装cmake环境.因为博主测试机是ubuntu,所以直接用apt-get install cmake命令来安装,yum相信应该也一样.或者可以编译安装,步骤如下. 复制代码 代码如下: wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz tarx zvfc cmake-2.8.12.2.tar.gz cd cmake-2.8.12.2  ./configure make && make install 安装完成后执行

  • Linux下手动编译安装PHP扩展的例子分享

    开发和部署的过程中可能会经常出现需要额外安装PHP扩展的情况,下边以PDO_MYSQL为例,介绍下手动编译安装PHP扩展: 先到http://pecl.php.net/找需要的版本,我用的是稳定的版本.要先看看说明,特别是要注意mysql的php的版本. 复制代码 代码如下: wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz tar xzvf PDO_MYSQL-1.0.2.tgz cd PDO_MYSQL-1.0.2 /usr/local/php

  • Linux+php+apache+oracle环境搭建之CentOS下源码编译安装PHP

    首先需要安装下面几个安装包,可以在CD-ROM数据源里找到以下安装包yum安装 yum install perl* freetype libpng* libxm2 libxm2-devel curl curl-devel libjpeg* 手动下载安装 jpegsrc.v8c.tar libmcrypt-2.5.8.tar.gz 安装 jpegsrc # tar -xvzf jpegsrc.v8c.tar # cd jpeg-8c # ./configure --prefix=/usr/loca

随机推荐