centos libraries?centos7下载软件包

今天给各位分享centos libraries的知识,其中也会对centos7下载软件包进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

CentOS中httpd源代码安装与测试步骤分享

环境:CentOS6.4 x86_64

所需应用程序:APR()、APR-UTIL()、 httpd()

在Linux中软件安装有两大类,一类是软件包安装,一类是源代码安装。软件包安装就是指将编译好的二进制封装成rpm包,可以直接使用rpm工具和yum工具安装。源代码安装是指没有编译成二进制,需要通过手动编译的。使用源代码安装的原因有两个,一个就是想使用最新版的软件,另一类就是想自定义其功能的。

源代码安装的步骤:

展开压缩文件一般把文件都解压缩到/uer/local/src中在解压缩文件目录中使用./configure选项来检测编译环境,产生makefiel文件使用make进行编译 make install安装

下面就介绍如何在CentOS中通过源代码安装httpd以及测试。

用源代码安装软件首先要在系统中安装相应的编译环境;在RedHat中搭建编译环境需要的工具有DevelopmentLibraries、Development Tools、Legacy Software Development、X Software Development,这些开发环境在RehdHat是不可缺少的。在CentOS中需要的开发工具主要有两个,AdditionalDevelopment、Development tools。所以在进行源代码安装时需要搭建编译环境。

那么首先我们要挂载我们的光盘,通过光盘查找我们要安装的软件包组,挂载光盘的命令是:mount/dev/cdrom/media/cdrom光盘挂载成功后我们可以通过 yum--disablerepo=\*--enablerepo=c6-media grouplist查询我们所需要的软件包组。通过查询我们发现如图中圈出来的必须的两个开发软件包组。那么就来安装这两个软件包组吧,使用命令 yum–disablerepo=\*--enablerepo=c6-media groupinstall“AdditionalDevelopment”“Development tools”

安装完成后,接下来就进行httpd的安装,在安装httpd前需要先安装apr和apr-util

在这里我们用apr-1.4.6.tar.gz、apr-util-1.5.1.tar.gz和httpd-2.4.4.tar.bz2为例;首先把这些压缩文件解压缩到/usr/local/src目录中,使用命令

对三个压缩文件解压缩

解压缩完成后进入/usr/local/src目录中就能发现我们刚刚解压缩的三个文件所形成的目录

先来安装apr,那么要先进入/usr/local/src/apr-1.4.6目录中

可以看到一个configure文件这个文件就是我们用来配置选项,检测编译环境。还有一个README或者是INSTALL这个文件是告诉我们一些使用的方法。现在我们就来执行configure,在执行时加入--prefix来指定安装目录,使用方法就是在该解压缩目录中输入./configure–prefix=/usr/local/apr(这个目录是自己指定的,如果以后想要卸载该软件可以直接删除该目录即可,默认是安装在/desired/path/of/apr中,如果使用默认的安装路径想要卸载那就比较麻烦了)在这个过程中如果没有提示错误那就说明可以进行下一步了。

然后就使用make来进行编译了

make是一个比较漫长的过程,耐心等待就是

到了这里就说明编译完成,接下来就使用make install进行安装了

完成后我们到/usr/local/目录中看看

我们已经看到我们刚刚安装的apr了,再进到apr目录中看看

我们可以看一些bin目录,include目录还有lib目录

如果我们想让其他的软件使用apr的库,我们就需要在/etc/ld.so.conf.d/目录中创建一个.conf文件来指明它的库路径,那我们就来创建一个文件

创建完成后我们在该文件中写出路径

然后用ldconfig命令刷新缓存;

可以看到已经加载上了

如果想让程序调用apr的头文件,那我们就在/usr/include中创建一个链接指向/usr/local/apr/include/apr-1

切换到/usr/include目录下

在该目录下可以看到很多头文件

然后创建链接

通过查询我们可以看到刚刚创建的链接

好了,到此apr就已经安装完成,接下来该安装apr-util

首先切换到/usr/local/src/apr-util-1.5.1目录中

同样在该目录中也看到有 configure、README文件

接下来就和前面apr的方法一样,执行./configure--prefix=/usr/local/apr-util当然这样是不行的,这样是会提示错误的,我们需要指出apr-config的全路径,apr-config的路径是在/usr/local/apr/bin目录下,所以应该写成./configure--prefix=/usr/local/apr-util--with-apr=/usr/local/apr/bin/apr-config

通过检测后,执行make;

接下来进行安装

安装完成后,想前面的apr一样,指定库文件路径

同样刷新缓存

接下来指明头文件

创建成功,最后来安装 httpd

切换到/usr/local/src/httpd-2.4.4

通过查看可以看到有 configure INSTALL README,接下来就来执行./configure--prefix=/usr/local/httpd当然这样肯定还是不行,这里需要指出apr-config的全路径和apu-config的全路径,那就应该写成./configure--prefix=/usr/local/apache--with-apr=/usr/local/apr/bin/apr-config--with-apr-util=/usr/local/apr-util/bin/apu-config

执行后如果我们看到这个错误

这是一个关于prce-config的错误;那就要排除错误,首先看看系统中有没有安装和prce相关的软件

这里安装了pcre-7.8-6.el6.x86_64,那就要看看这个软件里有没有关于pcre-config相关的文件

发现这里面没有关于pcre-config的文件,那就要安装pecr-devel

安装完成后,在安装httpd这样就顺利通过检测然后执行make

make完成后执行makeinstall

然后指明头文件

在/usr/local/apache/bin目录中都是一些可执行的文件,如果想要执行每次都要切换到该目录下,这样是很麻烦的。如果想要直接执行就要修改环境变量/etc/profile

在第55中指明了在系统中PATH搜索路径,我们就在这里指明现在的搜索路径

这样就可以了,使用./etc/profile重新读取,再用echo输出PATH的值看看有没有加载上

从图中看到已经加载上了

然后还要指出httpd的man手册的位置,编辑/etc/man.config

在里面添加MANPATH/usr/local/apache/man即可。

到这里httpd已经安装完成了,接下来就该编写shell脚本,来控制httpd的启动和停止。

脚本存放在/etc/init.d里面,那我们就在里面创建一个httpd的控制脚本来控制httpd服务的启动。

脚本的代码:

#!/bin/bash[-e/etc/init.d/functions]&&./etc/init.d/functionsprog=/usr/local/apache/bin/httpdlockfile=/var/lock/subsys/httpdstart(){if[-e$lockfile];thenecho"httpdserverisstarted"elseecho-n"httpdserverisstarting..."sleep1$prog&>/dev/null&&echo"[ok]"&&touch$lockfile||echo"[failer]"fi}stop(){if[!-e$lockfile];thenecho"httpdserverisstoped"elseecho-n"httpdserverisstoping..."sleep1killprochttpd&&echo"[ok]"&&rm-rf$lockfile||echo"[failer]"fi}status(){if[-e$lockfile];thenecho"httpdserverisstarted"elseecho"httpdservernofound"fi}case$1instart)start;;stop)stop;;restart)stopstart;;status)status;;*)echo"USAGE:start|stop|restart|status";;esac

启动服务:

通过查看80端口发现httpd已经启动

由此可见我们的httpd通过源代码安装成功,并且测试没有出现错误。

CentOSyumphpmcrypt扩展安装方法

使用 yum install php-mcrypt安装mcrypt扩展时会提示没有安装包

Setting up Install Process

No package php-mcrypt available.

Error: Nothing to do

mcrypt是加密扩展库,加载了它可以用他里面自带的22种加密解密算法

CentOS6默认安装的是php5.3.2

默认的 redhat repos php中是没有 mcrypt扩展的

根据红帽的官方消息()RHEL不打算添加PHP的mcrypt的支持

Joe Orton 2010-08-05 04:47:17 EDT

Thanks for the report.

We are not planning to ship mcrypt support for PHP.

解决方法:

从php官网下载新的php 5.3源码包后,解压到本地目录

进入解压目录下的 ext目录后会发现有 mcrypt,

进入 mcrypt目录

#cd/ext/mcrypt

#phpize

注意:如果报-bash:phpize not Found那么 yum install php-devel就可以使phpize进行动态编译安装扩展

#./configure-with-php-config=/usr/sbin/php/bin/php-config

#make&& make install

出现:

----------------------------------------------------------------------

Libraries have been installed in:

/var/php-5.3.10/ext/mcrypt/modules

If you ever happen to want to link against installed libraries

in a given directory, LIBDIR, you must either use libtool, and

specify the full pathname of the library, or use the `-LLIBDIR'

flag during linking and do at least one of the following:

- add LIBDIR to the `LD_LIBRARY_PATH' environment variable

during execution

- add LIBDIR to the `LD_RUN_PATH' environment variable

during linking

- use the `-Wl,-rpath-Wl,LIBDIR' linker flag

- have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for

more information, such as the ld(1) and ld.so(8) manual pages.

----------------------------------------------------------------------

Build complete.

Don't forget to run'make test'.

Installing shared extensions:/usr/lib64/php/modules/

查看:

# php-m

...

libxml

mbstring

mcrypt

mysql

...

[Zend Modules]

已安装成功!

再次查看 phpinfo,可以看到mcrypt扩展详情。

centos7怎么编译安装gcc-c++

方法/步骤

1

yum install glibc-static libstdc++-static-y

安装c和c++的静态库(据说如果系统中缺少libc.a和libstdc++.a编译时会出错,但是我没有那么多闲情逸致去试,实践过的朋友可以回复一下,分享一下经验,让大家都长长见识)

2

下载解压gcc,我的gcc目录是gcc-4.8.0

3

进入gcc目录,执行:

./contrib/download_prerequisites

这个神奇的脚本文件会帮我们下载、配置、安装那三个依赖的库。可以节约我们大量的时间和精力。

4

你以为这三个库自动下载了、自动make install了就没事了吗?错!

很多人在编译gcc的时候出现各种奇奇怪怪的错误就是这步没有做好。

它们还不在.so文件的搜索路径里面,需要加进去,最后切记切记一定要执行一下ldconfig。

大致做法为:

1,找到你的共享库文件被install到哪个目录了(updatedb+locate命令)。

2,如果你的库不是直接放在/lib或/usr/lib下,需要修改/etc/ld.so.conf文件,加入你的共享库的路径

3,如果在2中添加了共享库路径,切记要执行一下ldconfig,更新响应cache文件让系统能找到你的共享库。

5

建立临时目录,这个目录用以存放编译时的大量临时文件,是文档要求中必须的。

我是在gcc-4.8.0下建立了一个名为gcc-build-4.8.0的目录,进入它。

mkdir gcc-build-4.8.0

cd gcc-build-4.8.0

配置gcc编译选项

6

强烈建议阅读INSTALL目录下的说明文档,尤其是configure.html,以确定你的编译选项。

比较基本的选项有--enable-languages,说明你要让你的gcc支持那些语言,--disable-multilib不生成编译为其他平台可执行代码的交叉编译器。--disable-checking生成的编译器在编译过程中不做额外检查,也可以使用--enable-checking=xxx来增加一些检查。

网上还说了什么--with-gmp、--with-mpfr、--with-mpc这三个选项,但是如果你3,4步做好了,就不要配了,反之你还是老实点吧别抱侥幸心理了。

调用gcc-4.8.0目录下的configure文件:

例如:

../configure--enable-checking=release--enable-languages=c,c++--disable-multilib

7

执行

../make#不解释

执行编译命令(#在8核的虚拟机上进行编译,每个核分配2个编译任务)

make-j16

make install编译过程CPU核基本100%占用,整个编译用时11分50秒。

检查gcc版本

#你就等吧少年,建议晚上睡觉前做

当然上面三步一定要在前一步顺利结束的情况下进行,如果哪一步出错了,结果都显示error了,就不要再做后面的了。在shell的输出里搜索"error"看具体的出错点是什么,baidu、google一下为什么。

如果你求稳的话,可以在make install之前先make check一下。

阅读剩余
THE END