Created
July 5, 2013 19:56
-
-
Save nmilford/5936849 to your computer and use it in GitHub Desktop.
Building RethinkDB on CentOS
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Make a build env (builds will be slower because it is a VM) | |
| vagrant init CentOS-5-x86_64 http://puppet-vagrant-boxes.puppetlabs.com/centos-59-x64-vbox4210-nocm.box | |
| vagrant up | |
| vagrant ssh | |
| # Install EPEL and My Repo (RMIO) | |
| sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm | |
| sudo rpm -Uvh http://repo.milford.io/el/rmio-0.0.1-1.noarch.rpm | |
| # Install EPEL and Base stuff | |
| sudo yum -y install gcc44-c++ protobuf-compiler protobuf-devel python26 libaio-devel valgrind-devel gtest glibc-devel | |
| # Install my custom stuff. | |
| sudo yum -y install v8-devel boost154-devel gperftools-devel libunwind-devel | |
| # Spec files for the dep RPMs so you can see how I built themm (like for a static tcmalloc_minimal lib) | |
| # https://github.com/nmilford/rpm-v8 | |
| # https://github.com/nmilford/rpm-libunwind | |
| # https://github.com/nmilford/rpm-gperftools | |
| # https://github.com/nmilford/rpm-boost154 | |
| # Upgrade everything | |
| sudo yum -y upgrade | |
| # Reboot to be on the latest kernel, etc... | |
| sudo reboot | |
| # Log back in and begin | |
| vagrant ssh | |
| # Grab rethinkdb | |
| wget http://download.rethinkdb.com/dist/rethinkdb-1.7.1.tgz | |
| tar xf rethinkdb-1.7.1.tgz | |
| cd rethinkdb-1.7.1/ | |
| # Configure using GCC 4.4 | |
| export CXX=g++44 | |
| ./configure | |
| make | |
| [vagrant@localhost rethinkdb-1.7.1]$ ./configure | |
| * Detecting system configuration | |
| Bash: 3.2.25(1)-release | |
| Operating System: Linux | |
| OS Version: Linux 2.6.18-348.6.1.el5 x86_64 | |
| Without tcmalloc: no | |
| Build client drivers: no | |
| Architecture: x86_64 | |
| Use ccache: no | |
| C++ Compiler: GCC 4.4.7 (/usr/bin/g++44) | |
| Precompiled web assets: yes | |
| Protobuf compiler: /usr/bin/protoc | |
| wget: /usr/bin/wget | |
| curl: /usr/bin/curl | |
| protobuf: -lprotobuf | |
| v8: -lv8 | |
| tcmalloc_minimal (static): /usr/lib64/libtcmalloc_minimal.a | |
| Test protobuf: ok | |
| Installation prefix: /usr/local | |
| Configuration prefix: /usr/local/etc | |
| Runtime data prefix: /usr/local/var | |
| * Wrote configuration to config.mk | |
| [vagrant@localhost rethinkdb-1.7.1]$ make | |
| mk/support.mk:103: warning: undefined variable `LESSC' | |
| mk/support.mk:103: warning: undefined variable `HANDLEBARS' | |
| mk/support.mk:103: warning: undefined variable `LESSC' | |
| mk/support.mk:103: warning: undefined variable `HANDLEBARS' | |
| [1/288] MKDIR build/release/proto | |
| [2/288] PROTOC[CPP] src/rdb_protocol/ql2.proto | |
| [3/288] PROTOC[CPP] src/rdb_protocol/ql2_extensions.proto | |
| [4/288] CC build/release/proto/rdb_protocol/ql2.pb.cc -o build/release/obj/rdb_protocol/ql2.pb.o | |
| [5/288] CC build/release/proto/rdb_protocol/ql2_extensions.pb.cc -o build/release/obj/rdb_protocol/ql2_extensions.pb.o | |
| [6/288] MKDIR build/release/re2 | |
| [7/288] MAKE -C ./external/re2 | |
| [8/288] CC src/extproc/pool.cc -o build/release/obj/extproc/pool.o | |
| <snip> | |
| [166/288] CC src/arch/spinlock.cc -o build/release/obj/arch/spinlock.o | |
| [167/288] CC src/arch/runtime/context_switching.cc -o build/release/obj/arch/runtime/context_switching.o | |
| [168/288] CC src/arch/runtime/runtime_utils.cc -o build/release/obj/arch/runtime/runtime_utils.o | |
| [169/288] CC src/arch/runtime/event_queue/poll.cc -o build/release/obj/arch/runtime/event_queue/poll.o | |
| [170/288] CC src/arch/runtime/event_queue/epoll.cc -o build/release/obj/arch/runtime/event_queue/epoll.o | |
| src/arch/runtime/event_queue/epoll.cc: In function ‘int user_to_epoll(int)’: | |
| src/arch/runtime/event_queue/epoll.cc:29: error: ‘EPOLLRDHUP’ was not declared in this scope | |
| src/arch/runtime/event_queue/epoll.cc: In function ‘int epoll_to_user(int)’: | |
| src/arch/runtime/event_queue/epoll.cc:43: error: ‘EPOLLRDHUP’ was not declared in this scope | |
| src/arch/runtime/event_queue/epoll.cc: In constructor ‘epoll_event_queue_t::epoll_event_queue_t(linux_queue_parent_t*)’: | |
| src/arch/runtime/event_queue/epoll.cc:52: error: ‘epoll_create1’ was not declared in this scope | |
| make[1]: *** [build/release/obj/arch/runtime/event_queue/epoll.o] Error 1 | |
| make: *** [make] Error 2 | |
| [vagrant@localhost rethinkdb-1.7.1]$ uname -a | |
| Linux localhost.localdomain 2.6.18-348.6.1.el5 #1 SMP Tue May 21 15:29:55 EDT 2013 x86_64 x86_64 x86_64 GNU/Linux |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment