diff --git a/Makefile.base b/Makefile.base index 3cbf518..086c82b 100644 --- a/Makefile.base +++ b/Makefile.base @@ -31,7 +31,7 @@ COMP_FLAGS += -DHAVE_WINDOWED_MODE # add real-time lib for clock_gettime LIBRT = -lrt endif -ifneq ($(UNAME), Darwin) +ifneq ($(UNAME), Darwin) # OSX doesn't have /proc, TODO check BSD COMP_FLAGS += -DHAVE_PROC_FILESYS endif @@ -54,8 +54,8 @@ ifeq ($(UNAME), Darwin) # homebrew INSTALL=ginstall endif -# NOTE: This is not double assignment. It creates an expression that the -# unit tests (e.g.) can evaulate to dynamically set LD_LIBRARY_PATH or +# NOTE: This is not double assignment. It creates an expression that the +# unit tests (e.g.) can evaulate to dynamically set LD_LIBRARY_PATH or # DYLD_LIBRARY_PATH to use the locally build libs as they run the tests. ifeq ($(UNAME), Darwin) # homebrew LD_LIB_PATH=DYLD_LIBRARY_PATH=$(TOPDIR)/src/lib/$(OBJDIR):$(LD_LIBRARY_PATH) @@ -73,12 +73,12 @@ ARCH_SUFFIX=64 endif # where to install files: -#PREFIX=/usr/local -PREFIX ?= /tmp/install -BIN_PREFIX ?= $(PREFIX)/bin -PERL_PREFIX ?= $(PREFIX) -MAN_PREFIX ?= $(PREFIX)/share/man -INC_PREFIX ?= $(PREFIX)/include +PREFIX=/usr/local +#PREFIX ?= /tmp/install +BIN_PREFIX = $(PREFIX)/bin +PERL_PREFIX = $(PREFIX) +MAN_PREFIX = $(PREFIX)/share/man +INC_PREFIX = $(PREFIX)/include ############################################################ @@ -113,7 +113,7 @@ profile:: $(MAKE) MODE=profile make-recursive-default-make-target test-prof:: $(MAKE) MODE=profile make-recursive-test -test-fast:: +test-fast:: $(MAKE) FAST=1 make-recursive-test valg-fast:: $(MAKE) FAST=1 make-recursive-valg @@ -166,7 +166,7 @@ ifeq ("$(GCC_GTE_48)", "1") PEDANTIC += -Wunreachable-code endif -ifeq ($(DISABLE_TSC),1) +ifeq ($(DISABLE_TSC),1) COMP_FLAGS += -DDISABLE_TSC endif @@ -226,7 +226,7 @@ run-$(1): $(OBJDIR)/$(1) @echo; echo "###### Running " $(1) "######"; echo $(LD_LIB_PATH) $(RUN_PREFIX) $(OBJDIR)/$(strip $1) $(RUN_ARGS) valg-$(1): $(OBJDIR)/$(1) - @echo; echo "###### Running " $(1) " (valgrind) ######"; echo + @echo; echo "###### Running " $(1) " (valgrind) ######"; echo $(LD_LIB_PATH) VALG=1 $(RUN_PREFIX) ./valgrind_runner.sh $(OBJDIR)/$(strip $1) $(RUN_ARGS) endef @@ -246,7 +246,6 @@ run-$(1): $(OBJDIR)/$(1) @echo; echo "###### Running " $(1) "######"; echo $(LD_LIB_PATH) $(RUN_PREFIX) $(OBJDIR)/$(strip $1) $(RUN_ARGS) valg-$(1): $(OBJDIR)/$(1) - @echo; echo "###### Running " $(1) " (valgrind) ######"; echo + @echo; echo "###### Running " $(1) " (valgrind) ######"; echo $(LD_LIB_PATH) VALG=1 $(RUN_PREFIX) ./valgrind_runner.sh $(OBJDIR)/$(strip $1) $(RUN_ARGS) endef - diff --git a/README.build b/README.build index 8dc203f..3e7c8d8 100644 --- a/README.build +++ b/README.build @@ -31,12 +31,17 @@ Compilation: NOTE: You may need to edit the "Configuration section" of Makefile.base for specific locations and options on your platform. - + For building on RHEL7 the following will help: sudo yum install git gcc\* openssl-devel readline-devel cppunit-devel If you have yum groups configured correctly: - sudo yum group install "Development Tools" + sudo yum group install "Development Tools" sudo yum install git openssl-devel readline-devel cppunit-devel rpm-build - +Troubleshooting: + If you see errors "mdbm_*: error while loading shared libraries: libmdbm.so: + cannot open shared object file: No such file or directory" while running MDBM + command line tools, define the shell variable LD_LIBRARY_PATH to include the + directory where the library is installed. For example, define + "LD_LIBRARY_PATH="/usr/local/lib64/" in ~/.bashrc.