|
centos5系下编译Mongodb2.0.0:
Mongodb2.0.0编译所依赖的包有pcre,Boost,Spider Monkey 和scons
1,yum 安装pcre,boost,scons,不赘述
2,编译spider monkey
- wget -c ftp://ftp.mozilla.org/pub/mozilla.org/js/js-1.7.0.tar.gz
- tar xvf js-1.7.0.tar.gz
- cd js/src
- export CFLAGS="-DJS_C_STRINGS_ARE_UTF8" #重要,打开UTF-8支持
- make -f Makefile.ref
- JS_DIST=/usr/local/js make -f Makefile.ref export #安装到/usr/local/js
tips:mongodb2.0.0官方文档提示目前仅测试过js1.7.0版本,最新的1.8.0没有经过测试,所以为了避免问题,我们选择1.7.0版
3,编译readline
- wget -c ftp://ftp.cwru.edu/pub/bash/readline-6.2.tar.gz
- tar xvf readline-6.2.tar.gz
- cd readline-6.1
- ./configure --prefix=/usr/local/readline
- make
- make install
4,安装python2.5以上版本
这个很关键,如果没有使用2.5以上版本,编译的时候,会连第一步都过不去。原因就是因为版本不同,所造成的语法错误。
tips:这里选择安装python2.6版本
到这里还没有结束,scons是python编写的一个项目管理工具,你还要修改scons使用的python版本,centos5默认是2.4的。
第一行脚本声明后面加个"2.6"即可
5,编译boost1.47.0
在这个问题上我吃了一个大亏,之前因为直接yum安装了boost(版本是1.33.1),mongodb安装好后一直无法启动,会自动kill自己,后来查各方资料,得知可能是boost版本的问题,于是就尝试再重新编译boost最新版,结果自然是成功了。
- wget -c http://downloads.sourceforge.net/project/boost/boost/1.47.0/boost_1_47_0.tar.gz
- tar xvf boost_1_47_0.tar.gz
- cd boost_1_47_0
- sh bootstrap.sh
- ./bjam --prefix=/usr/local/boost_1_47_0 threading=multi link=static variant=release install
6,开始编译mongodb
- wget -c http://downloads.mongodb.org/src/mongodb-src-r2.0.0.tar.gz
- tar xvf mongodb-src-r2.0.0.tar.gz
- cd mongodb-src-r2.0.0
- scons --prefix=/usr/local/mongodb --extrapath=/usr/local/js,/usr/local/readline,/usr/local/boost_1_47_0 install
照此,安装结束,可以开始感受no-sql的魅力了!
|
|
|