Permalink
Find file
Fetching contributors…
Cannot retrieve contributors at this time
73 lines (45 sloc) 2.14 KB
Build and Install Hashdot
Note: This needs some work, in particular use of autoconf, etc.
1. Install build dependencies:
* GNU make (3.81+)
* gcc (4.1.2+)
* Apache Portable Runtime: apr, apr-devel (1.2.7+)
* Java JDK
2. Edit Makefile
a. Change JAVA_HOME to installed JDK to use for compiling.
Defaults to JAVA_HOME environment variable or based on java in
PATH. Note the runtime JDK is configured separately in
profiles/default.hdp (hashdot.vm.home)
b. Override default environment (-m64|-m32) via CFLAGS if needed
For example, Mac OS X gcc defaults to -m32, so change it to -m64
to use a 64-bit JVM.
c. Change PROFILE_DIR to desired location of hashdot profiles.
Default: /opt/hashdot/profiles or environment variable.
For testing, set PROFILE_DIR environment variable to
"./profiles" (source directory). Set the PROFILE_DIR to its
final location and rebuild before installing (see below.)
d. Change INSTALL_BIN to desired install location of hashdot
binaries.
Default: /opt/bin
e. (Optional) Change set of INSTALL_SYMLINKS desired for install.
3. Edit ./profiles/*
Edit profiles before installation and to get "make test" working
with PROFILE_DIR=./profiles (see above.)
a. Edit JVM settings in ./profiles/default.hdp
Note hashdot.vm.arch and hashdot.vm.lib settings for specific
platforms. On Mac OS X, you can use either a "default" system
JVM or a specific JVM version. Hashdot must be built for the
same arch as the JVM (32/64). See 2b above.
b. Edit jruby.hdp to point to your jruby installation.
JRuby is required for running the tests via "make test"
4. Build and test
Build with local profiles directory for testing prior to install:
% PROFILE_DIR=./profiles make test
Note: On Mac OS X, the final test/test_cmdline.rb currently fails
due to lack of a suitable equivalent to the Linux prctl() for
process rename. However, this is not strictly required for useful
operation.
5. Install
Rebuild with final PROFILE_DIR and install:
% unset PROFILE_DIR
% make clean install