螃蟹分享下载站:专注做好下载站 www.ahjiajia.com!
游戏
您当前所在位置:首页 >软件教程 >应用教程

linux安装php与memcache过程记录(2)

时间:2024-09-04 11:48 来源:网络

为此,我需要去安装autoconf库,但是在安装这个库的时候,同样会报错:

linux安装php与memcache过程记录(2)

 

这里可以明显看出,就是M4版本太低,需要更新。通过查阅资料知晓,autoconf使用M4宏处理器处理configure.in文件,从而可以生成configure文件用于安装配置。

然后,就是去下载M4源码进行安装了,这里又有一个坑,我安装提示的去下载推荐的 M41.4.16版本的源码包,配置成功,但是编译的时候会出现类似下面的问题:

./stdio.h:477:1: error: 'gets' undeclared here (not in a function)

_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");

^

这个问题我在网上查找,发现不仅仅是安装M4会出现,很多人安装其他的库的时候也会出现类似问题,也找到有人更改 _GL_WARN_ON_USE进行hack,也有人说进行打补丁(这个问题的具体原因可能比较复杂,也没弄清)。但是我觉得我的ubuntu是13.10是比较新的版本,应该会有修复吧!于是我就重新下载了一个M4的最新版本:  

wget  /gnu/m4/m4-latest.tar.gz

tar -zxf m4-latest.tar.gz;

mv m4-1.4.17  /usr/local/m4

cd /usr/local/m4

./configure

make

make insatll

按照上面步骤安装的时候,奇迹出现了,果然可以编译安装完成,没有任何问题。此处得出的结论是,作为软件使用者和开发者我们一定要适合保持软件的更新,尽量使用最新的稳定的版本,这样可以避免遇到很多奇怪的问题。

安装时把解压包放到/usr/local/m4下,然后直接configure不指定prefix才可以安装autoconf,否则也会同样的找不到M4的错误。

安装autoconf如下:

export  PATH=/usr/local/m4:$PATH

cd autoconf

./configure --prefix=/usr/local/autoconf

make

make install

按照上述命令安装就完成了autoconf的安装。

然后接着去安装memcache,此时,使用export将/usr/local/autoconf/bin导入到PATH并不起作用,因此我尝试使用了如下的命令:

sudo ln -s /usr/local/autoconf/bin/autoconf autoconf

sudo ln -s /usr/local/autoconf/bin/autoheader autoheader

sudo ln -s /usr/local/autoconf/bin/autom4te autom4te

sudo ln -s /usr/local/autoconf/bin/autoreconf autoreconf

sudo ln -s /usr/local/autoconf/bin/autoscan autoscan

sudo ln -s /usr/local/autoconf/bin/autoupdate autoupdate

sudo ln -s /usr/local/autoconf/bin/ifnames ifnames

做了这些符号链接之后,我重新进入memcache源码文件使用phpize工具就没问题了,成功生成了configure文件:

linux安装php与memcache过程记录(2)

安装过程如下:

./configure   

>--with-php-config=/usr/local/php5.5/bin/php-config  

>--enable-memcache=/usr/bin/memcached

make

make install

安装完成如下图所示,最后出现的installed shared extensions是在php的配置文件中进行配置memcache时候需要使用到的,需要保存下来。

linux安装php与memcache过程记录(2)

 配置php.ini文件,在/usr/local/php5.5

b/php.ini,找到extension_dir这一行:

;extension_dir = "./" 改为

extension_dir = "安装memcache完成后的目录路径"

extension = "memcache.so" ;添加此行用于添加memcache扩展

使用如下的php代码进行测试:

//Test memcache

$mem = new Memcache;

$mem->connect('127.0.0.1', 11211);

echo '

';

var_dump($mem);

var_dump(class_exists("Memcache"));

?>

结果如图: 

linux安装php与memcache过程记录(2)

通过上述的种种艰辛,不仅是完成了安装的任务,也让我进一步熟悉了linux下安装软件的各种值得注意的地方。安装gd2库的时候需要依赖Xpm库,这个问题其实是在安装好了gd2后安装php的时候出现的,然后又重新安装gd2,特别是安装Xpm后,使用了符号链接之后,就可以安装带有Xpm的gd2库了。这个方法是一个启示!在后面安装autoconf完成后,使用PATH变量失效时是当时突然想起符号链接这个方法,因此就自己尝试性使用并解决了问题。还有就是安装M4的时候,版本问题可能牵涉出很多底层的问题,这个我也没弄清楚,当时也是尝试性的使用最新版本安装就可以解决了。最后安装memcache的时候就比较顺利了。同时也发现网上有很多安装php的时候就使用配置选项--with-autoconf选项直接一步安装了autoconf,这样就可以直接使用phpize工具了,但是我这里没有安装,虽然让我费了周折,但是最后单独安装了autoconf之后,使用符号链接指定安装的autoconf路径,然后phpize就可以从PATH中的/usr/bin这个路径下找到,因此这也说明了安装php是指定配置选项应该就是指定了php对这个依赖项需要调用时的一个寻找路径。晚饭时间到了,折腾了一天,看到一切都可以使用的时候还是感觉蛮不错的!希望有前辈可以解答我前面提到的一些疑惑!

  以上就是系统大全给大家介绍的如何使的方法都有一定的了解了吧,好了,如果大家还想了解更多的资讯,那就赶紧点击系统大全官网吧。 

 

本文来自系统大全http://www.win7cn.com/如需转载请注明!推荐:win7纯净版

相关应用
腾讯元宝
133.22MB / 2.6.0
同步课堂学生
107.2MB / 3.0.41
央视影音HD
76.1MB / 7.9.3
外研社德语
23.5MB / 3.8.6
上啥班
103.9MB / 5.4.5
摩托范
186.0MB / 3.59.40
Kindle
103.0MB / 8.89.3.10(2.0.3821.0-kfc)
启信宝
48.1MB / 9.26.20
Only婚恋
57.8MB / 5.4.0
来疯
163.6MB / 9.1.6
最美装修
42.6MB / 3.4.0
掌上火车票
18.5MB / 9.1.0
哆哆早教
118.6MB / 7.2.1