UIMA-5236
diff --git a/README.4bin b/README.4bin
index e75e251..dfd4554 100644
--- a/README.4bin
+++ b/README.4bin
@@ -13,12 +13,9 @@
Supported Platforms
--------------------
-The Apache UIMA C++ SDK has been built and tested in 64-bit mode
-on Linux systems with gcc version 4.8.5. MacOS and Windows versions are delayed
-pending user requests.
+The Apache UIMA C++ SDK has been built and tested in 64-bit mode on Linux systems with gcc version 4.8.5. MacOS and Windows versions are delayed pending user requests.
-UIMACPP has dependencies on APR, ICU, Xerces-C and optionally ActiveMQ-cpp
-libraries. ActiveMQ-cpp has a dependency on APR-UTIL.
+UIMACPP has dependencies on APR, ICU, Xerces-C and optionally ActiveMQ-cpp libraries. ActiveMQ-cpp has a dependency on APR-UTIL.
This UIMA C++ SDK has been built with the following versions of these dependencies:
- APR 1.6.5
@@ -66,12 +63,10 @@
The console should show that a Dave was found in some of the files in the data directory.
-To test interoperability with Java using the JNI, enable UIMA-AS by setting UIMA_HOME and
-adding $UIMA_HOME/bin to PATH. Then use the runAE.sh utility (use runAE on Windows) to run
-DaveDetector from the $UIMACPP_HOME/examples:
+To test interoperability with Java using the JNI, enable UIMA-AS by setting UIMA_HOME and adding $UIMA_HOME/bin to PATH. Then use the runAE.sh utility (use runAE on Windows) to run DaveDetector from the $UIMACPP_HOME/examples:
* runAE.sh descriptors/DaveDetector.xml data
-To test interoperability with UIMA-AS, continuing with above configuration
+To test interoperability with UIMA-AS, continuing with above configuration:
* Start and ActiveMQ broker using the startBroker.sh command
* Build and deploy the uimacpp MeetingAnnotator component
* cd $UIMACPP_HOME/examples/tutorial/src and run "make -f MeetingAnnotator.mak"
@@ -94,6 +89,19 @@
---------------------
The annotator and application Make files include lib/base.mak.
-On Mac OS X, may be necessary to modify the line in base.mak
+On Mac OS X, it is necessary to modify base.mak
+1) Change APR, ICU and XERCES-C includes
+ In line
INCLUDES=-I$(UIMACPP_HOME)/include -I$(UIMACPP_HOME)/include/apr-1
-to correctly specify path to the APR include directory.
+ set the correct path to the APR, ICU and XERCES-C include directories. For example:
+ INCLUDES=-I$(UIMACPP_HOME)/include -I/usr/local/opt/apr/libexec/include/apr-1 -I/usr/local/opt/icu4c/include -I/usr/local/opt/xerces-c/include
+2) Add APR, ICU and XERCES-C libraries
+ In line
+ LIBRARIES=-L$(UIMACPP_HOME)/lib
+ include the path to the APR, ICU and XERCES-C lib directories. For example:
+ LIBRARIES=-L$(UIMACPP_HOME)/lib -L/usr/local/opt/apr/libexec/lib -L/usr/local/opt/icu4c/lib -L/usr/local/opt/xerces-c/lib
+3) Change the compiler
+ If you have issues with the default Mac OS X GCC, install GCC-5 and change the line
+ CC=g++
+ to
+ CC=g++-5
diff --git a/src/base.mak b/src/base.mak
index ceb958c..dfac98c 100644
--- a/src/base.mak
+++ b/src/base.mak
@@ -46,6 +46,9 @@
# USER_LINKFLAGS to specify additional linker parameters
# USER_XTARGET to specify extra user target to build
#
+# Mac OS X users must modify this file, changing the CC, includes and
+# libraries. Follow the README for more instructions.
+#
#############################################################################
ifeq ($(UIMACPP_HOME),)
@@ -102,6 +105,10 @@
TARGET_FILE_NAME=$(TARGET_FILE)
endif
+ifeq ($(UNAME), Darwin)
+ BIN_LINKFLAGS= -lxerces-c -licuuc -licuio -licui18n -licudata -ldl
+endif
+
LINKFLAGS= $(DLL_LINKFLAGS) $(BIN_LINKFLAGS) \
$(USER_LINKFLAGS) $(BUILD_LFLAGS) \
-L$(UIMACPP_HOME)/lib -luima $(EXTRA_LINK_LIBS)