Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History

download and build couchbase server 2.0 dependencies.

In this step we assume that you use prefix=/opt/couchbase and current user has permission to access /opt/couchbaseh4. build and install curl

wget  http://curl.haxx.se/download/curl-7.21.4.tar.gz
tar -xvf curl-7.21.4.tar.gz
cd curl-7.21.4
./configure --prefix=/opt/couchbase --without-ssl --disable-shared --disable-ldap --disable-ldaps --without-libidn CFLAGS="-O2 -g"
LD_RUN_PATH=/opt/couchbase/lib make
LD_RUN_PATH=/opt/couchbase/lib make install

build and instal libevent

wget https://github.com/downloads/libevent/libevent/libevent-2.0.11-stable.tar.gz
tar -xvf libevent-2.0.11-stable.tar.gz
cd libevent-2.0.11-stable
./configure --prefix=/opt/couchbase --disable-openssl CFLAGS="-O2 -g"
make
make install

h4. build and install v8
mkdir -p /opt/couchbase/include
mkdir -p /opt/couchbase/lib
git clone git://github.com/couchbase/v8
git checkout 3.9.7
scons -j 8 arch=x64 mode=release snapshot=on library=shared visibility=default
cp libv8.* /opt/couchbase/lib
cp include/* /opt/couchbase/include
echo "447decb75060a106131ab4de934bcc374648e7f2" > /opt/couchbase/lib/libv8.ver

build and install icu4c

git clone git://github.com/couchbase/icu4c
cd icu4c
cd source && ./configure "--prefix=/opt/couchbase"
cd ..
make -C source install

build and instal gperftools(tcmalloc)

wget http://gperftools.googlecode.com/files/gperftools-2.0.tar.gz
tar -xvf gperftools-2.0.tar.gz
cd gperftools-2.0
./configure --prefix=/opt/couchbase --disable-static --enable-minimal CFLAGS="-O2 -g" CXXFLAGS=-DTCMALLOC_SMALL_BUT_SLOW
make libtcmalloc_minimal.la
make install-exec-am install-data-am

build and install snappy

git clone git://github.com/couchbase/snappy
cd snappy
git reset --hard 5681dde156e9d07adbeeab79666c9a9d7a10ec95
./configure --prefix=/opt/couchbase CFLAGS="-O2 -g "
make LDFLAGS=" -no-undefined"
make install

build and install sqlite

mkdir -p /opt/couchbase/lib/python
wget http://s3.amazonaws.com/couchbase-grommit/sqlite-3.7.2-all-src-1.zip
unzip sqlite-3.7.2-all-src-1.zip
cd sqlite-3.7.2-src
./configure --prefix=/opt/couchbase
make install

build and instal pysqlite with python 2.4

git clone git://github.com/couchbase/pysqlite.git
cd pysqlite
git clean -xfd
git reset --hard 0ff6e32ea05037fddef1eb41a648f2a2141009ea
python2.4 setup.py config -I /opt/couchbase/include -L /opt/couchbase/lib build
cd build/lib*
tar czf pysqlite2_24.tar pysqlite2
mv pysqlite2_24.tar /opt/couchbase/lib/python/

build and install pysqlite with python 2.6

cd pysqlite
git clean -xfd
git reset --hard 0ff6e32ea05037fddef1eb41a648f2a2141009ea
python2.6 setup.py config -I /opt/couchbase/include -L /opt/couchbase/lib build
cd build/lib*
tar czf pysqlite2.tar pysqlite2
mv pysqlite2.tar /opt/couchbase/lib/python/

build and install ctypes

mkdir -p /opt/couchbase/lib/python
wget http://s3.amazonaws.com/couchbase-grommit/ctypes-1.0.2.tar.gz
tar -xvf ctypes-1.0.2.tar.gz
cd ctypes
python2.4 setup.py build
cd build/lib*
tar cf ctypes.tar ctypes _ctypes.so
mv ctypes.tar /opt/couchbase/lib/python/

build and install otp

wget https://github.com/erlang/otp/archive/OTP_R14B04.tar.gz
wget https://raw.github.com/couchbase/couchbase-build-dependencies/master/centos/5/64-bit/otp_R14B02-ssl-server.patch
wget https://github.com/couchbase/couchbase-build-dependencies/blob/master/centos/5/64-bit/0001-OTP_R14B04-Fix-fd-leak-when-using-async-thread-pool.patch
wget https://github.com/couchbase/couchbase-build-dependencies/blob/master/centos/5/64-bit/0001-disable-usage-of-futex-syscall.patch
tar -xvf OTP_R14B04.tar.gz
cd otp-OTP_R14B04
git apply ../otp_R14B02-64bit.patch || true
git apply ../0001-disable-usage-of-futex-syscall.patch
git apply ../otp_R14B02-ssl-server.patch
LD_RUN_PATH=/opt/couchbase/lib ./otp_build autoconf
touch lib/wx/SKIP lib/megaco/SKIP
LD_RUN_PATH=/opt/couchbase/lib ./configure --prefix=/opt/couchbase --enable-smp-support --disable-hipe --disable-fp-exceptions CFLAGS="-O2 -g"
LD_RUN_PATH=/opt/couchbase/lib make
LD_RUN_PATH=/opt/couchbase/lib make install

checkout Couchbase Server source code

mkdir couchbase
cd couchbase
repo init \-u git://github.com/couchbase/manifest.git \-m released/2.0.0.xml
repo sync

build couchbase server

PRODUCT_VERSION=2.0.0 PATH=/opt/couchbase/bin:$PATH LD_RUN_PATH=/opt/couchbase/lib make PREFIX=/opt/couchbase AUTO_RECONFIG=1 \
 'couchdb_EXTRA_OPTIONS=--with-erlang=/opt/couchbase/lib/erlang/usr/include \
 --with-btree-implementation=native  \
 --with-v8-include=/opt/couchbase/include --with-v8-lib=/opt/couchbase/lib \
 'couchdb_EXTRA_MAKE_OPTIONS=' 'libmemcached_EXTRA_OPTIONS=--disable-sasl' \
 'memcached_EXTRA_OPTIONS=--with-libevent=/opt/couchbase LDFLAGS=-L/opt/couchbase/lib LIBS=-ltcmalloc_minimal' \
 'ep-engine_EXTRA_OPTIONS=--with-libevent-prefix=/opt/couchbase' \
 'moxi_EXTRA_MAKE_OPTIONS=LTLIBEVENT=/opt/couchbase/lib/libevent.a' all
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.