You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by bh...@apache.org on 2011/12/20 22:17:38 UTC

svn commit: r1221494 - /uima/uimacpp/trunk/README.4src

Author: bhavani
Date: Tue Dec 20 21:17:37 2011
New Revision: 1221494

URL: http://svn.apache.org/viewvc?rev=1221494&view=rev
Log:
UIMA-2053 updated build instructions

Modified:
    uima/uimacpp/trunk/README.4src

Modified: uima/uimacpp/trunk/README.4src
URL: http://svn.apache.org/viewvc/uima/uimacpp/trunk/README.4src?rev=1221494&r1=1221493&r2=1221494&view=diff
==============================================================================
--- uima/uimacpp/trunk/README.4src (original)
+++ uima/uimacpp/trunk/README.4src Tue Dec 20 21:17:37 2011
@@ -1,154 +1,164 @@
-
-See the NOTICE file for licensing information.
-
---------------------------------
-Building the Apache UIMA C++ SDK
---------------------------------
-
-The Apache UIMA C++ SDK has been built and tested in 32-bit mode
-on Linux systems with gcc versions from 3.2.4 to 4.1.0, on Windows 
-using MSVC version 8, and on MacOSX with gcc version 4.0.1.
-
-64-bit builds have only been tested on Linux with gcc 4.1.0.
-
-
-Setting up the build environment:
----------------------------------
-UIMACPP has dependencies on APR, ICU, Xerces-C and ActiveMQ-cpp
-libraries.  Dependent libraries must be specified with the
-environmental parameters APR_HOME, ICU_HOME, XERCES_HOME and
-ACTIVEMQ_HOME.  For now, the ActiveMQ dependency is optional; if not
-specified the UIMA-AS compatible service wrapper deployCppService will
-fail to build.
-
-There is also a dependency on JNI headers from a Java JDK. The build
-looks for these headers in the directory specified by JAVA_INCLUDE.
-A typical setting for JAVA_INCLUDE on Linux or Windows would be
-$JAVA_HOME/include; on MacOSX jni.h and the other headers will be in a
-"Headers" directory.
-
-On Unix, dependent headers are expected under $dependent_HOME/include and
-dependent libraries under $dependent_HOME/lib.
-
-The build of dependent libraries on Windows is less consistent.
-APR libraries are expected in %APR_HOME%\Release. ActiveMQ libraries 
-are in %ACTIVEMQ_HOME%\vs2005-build\ReleaseDLL (or DebugDLL) and 
-ActiveMQ headers are expected in %ACTIVEMQ_HOME%\src\main.
-
-On Windows, buildsdk command tries to copy the msvc*.dll runtime libs from
-C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86\Microsoft.VC80.CRT
-To override the location for MSCV redistributable libraries, use MSVCRT_HOME.
-
-
-Building, testing and packaging on Linux:
------------------------------------------
-Set up your environment as described above. The following instructions
-assume you have unpacked the source into $HOME/uimacpp-2.X.Y-incubating.
-
-1 Create the GNU automake scripts:
-  Note: This step is only done when building from an SVN extract;
-        it should be skipped when building from a source tarball.
-        The prebuild step requires relatively up-to-date GNU tools
-        GNU automake v1.9.6, autoconf v2.59 and libtool v1.5.24.
-  cd $HOME/uimacpp-2.X.Y-incubating/src
-  make -f Makefile.prebuild
-
-2 Build the UIMA shared library and test routines:
-  cd $HOME/uimacpp-2.X.Y-incubating/src
-  make -f Makefile.unix install
-
-3 Run the test suite:
-  cd $HOME/uimacpp-2.X.Y-incubating/src/test
-  ./fvt.sh
-
-4 Build the documentation:
-  Note: The documentation build requires Doxygen 1.3.6 or later.
-  cd $HOME/uimacpp-2.X.Y-incubating/docs
-  ./builddocs.sh
-
-5 Build the SDK tree:
-  cd $HOME/uimacpp-2.X.Y-incubating
-  ./buildsdk.sh target_dir
-
-6 Package the SDK tarball:
-  cd target_dir
-  tar czf uimacpp-2.X.Y-incubating-bin.tgz uimacpp
-
-
-Building, testing and packaging on Windows:
------------------------------
-Set up your environment as described above. The following instructions
-assume you have unpacked the source into \uimacpp-2.X.Y-incubating.
-
-1 Build the UIMA C++ framework in both release and debug:
-  cd \uimacpp-2.X.Y-incubating\src
-  winmake /build release
-  winmake /build debug
-
-2 Build and run the test suite:
-  cd \uimacpp-2.X.Y-incubating\src\test
-  devenv test.sln /build release
-  fvt
-
-3 Build the documentation:
-  Note: The documentation build requires Doxygen 1.3.6 or later.
-  cd \uimacpp-2.X.Y-incubating\docs
-  builddocs
-
-4 Build the SDK tree:
-  set MSVCRT_HOME to the directory with the msvc*.dll files required.
-  cd \uimacpp-2.X.Y-incubating
-  buildsdk target_dir
-
-5 Package the SDK zipfile by creating a compressed folder of 
-  target_dir\uimacpp into uimacpp-2.X.Y-incubating-bin.zip
-
-
-Building, testing and packaging on Mac OSX:
--------------------------------------------
-Except for one problem with APR, building is the same here as on Linux.
-For the Intel-based Mac OSX machines we have tested with, the APR function
-to dynamically load shared libraries does not respect DYLD_LIBRARY_PATH.
-
-A fix is to patch dso/unix/dso.c as follows:
-
-26a27,31
->#if defined(DSO_USE_DYLD)
->#define DSO_USE_DLFCN
->#undef DSO_USE_DYLD
->#endif
->
-
-
-Building the dependencies: APR, ICU, Xersec-c and Activemq-cpp
---------------------------------------------------------------
-
-Download and build information for these libraries are at:
-  APR      - http://apr.apache.org/
-  ICU      - http://www.icu-project.org/
-  XERCES   - http://xml.apache.org/xerces-c/
-  ACTIVEMQ - http://activemq.apache.org/cms/download.html
-
-For UNIX users that cannot or do not want to install these at
-system root, specify DESTDIR for the install step. For example,
-after building APR, install using:
-
-  DESTDIR=`pwd` make install
-
-On Windows, the only activemq-cpp targets needed by uimacpp are ReleaseDLL and DebugDLL,
- e.g. devenv vs2005-build/vs2005-activemq.vcproj /build ReleaseDLL
-
-Also, the APR library can be built by launching libapr.dsp or by following the
-instructions in Makefile.win.
-
-
-Disclaimer
------------
-
-Apache UIMA is an effort undergoing incubation at The Apache Software
-Foundation (ASF). Incubation is required of all newly accepted projects
-until a further review indicates that the infrastructure, communications,
-and decision making process have stabilized in a manner consistent with
-other successful ASF projects. While incubation status is not necessarily
-a reflection of the completeness or stability of the code, it does
-indicate that the project has yet to be fully endorsed by the ASF.
+
+See the NOTICE file for licensing information.
+
+--------------------------------
+Building the Apache UIMA C++ SDK
+--------------------------------
+
+The Apache UIMA C++ SDK has been built and tested in 32-bit mode
+on Linux systems with gcc versions from 3.2.4 to 4.1.0, on Windows 
+using MSVC version 8, and on MacOSX with gcc version 4.0.1.
+
+64-bit builds have only been tested on Linux with gcc 4.1.0.
+
+
+Setting up the build environment:
+---------------------------------
+UIMACPP has dependencies on APR, ICU, Xerces-C and ActiveMQ-cpp
+libraries.  
+
+On Windows dependent libraries must be specified with the
+environmental parameters APR_HOME, ICU_HOME, XERCES_HOME and
+ACTIVEMQ_HOME.  For now, the ActiveMQ dependency is optional; if not
+specified the UIMA-AS compatible service wrapper deployCppService will
+fail to build.
+
+On Linux, system install of dependencies - APR, ICU, XERCES, ACTIVEMQ 
+will be used if minimum version requirements are met.  They may also
+be specified with the environmental parameters APR_HOME, ICU_HOME, XERCES_HOME and
+ACTIVEMQ_HOME.  ActiveMQ is required.
+
+There is also a dependency on JNI headers from a Java JDK. The build
+looks for these headers in the directory specified by JAVA_INCLUDE.
+A typical setting for JAVA_INCLUDE on Linux or Windows would be
+$JAVA_HOME/include; on MacOSX jni.h and the other headers will be in a
+"Headers" directory.
+
+On Unix, dependent headers are expected under $dependent_HOME/include and
+dependent libraries under $dependent_HOME/lib.
+
+The build of dependent libraries on Windows is less consistent.
+APR libraries are expected in %APR_HOME%\Release. ActiveMQ libraries 
+are in %ACTIVEMQ_HOME%\vs2005-build\ReleaseDLL (or DebugDLL) and 
+ActiveMQ headers are expected in %ACTIVEMQ_HOME%\src\main.
+
+On Windows, buildsdk command tries to copy the msvc*.dll runtime libs from
+C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86\Microsoft.VC80.CRT
+To override the location for MSCV redistributable libraries, use MSVCRT_HOME.
+
+
+Building, testing and packaging on Linux:
+-----------------------------------------
+Set up your environment as described above. The following instructions
+assume you have unpacked the source into $HOME/uimacpp-2.X.Y-incubating.
+
+1 Create the GNU automake scripts:
+  Note: This step is only done when building from an SVN extract;
+        it should be skipped when building from a source tarball.
+        The prebuild step requires relatively up-to-date GNU tools
+        GNU automake v1.9.6, autoconf v2.59 and libtool v1.5.24.
+  cd root of an SVN extract
+  ./autogen.sh
+
+2 Build the UIMA shared library and test routines:
+  cd root of the SVN extract  
+  ./configure --with-jdk=$JAVA_HOME/include --with-apr=$APR_HOME --with-icu=$ICU_HOME --with-xerces=$XERCES_HOME --with-activemq=$ACTIVEMQ_HOME
+  make
+  DESTDIR=`pwd` make install
+3 Build and run the test suite:
+  From root of the SVN extract  
+  make check
+
+4 Build the SDK tree:
+  Requires environmental parameters to be set for ICU_HOME, XERCES_HOME, APR_HOME, and ACTIVEMQ_HOME.
+  From root of the SVN extract  
+  make sdk ARGS=target_dir
+  This will build the documentation.
+  Note: The documentation build requires Doxygen 1.3.6 or later.
+
+5 Package the SDK tarball:
+  cd target_dir/..
+  tar czf uimacpp-2.X.Y-bin.tgz uimacpp
+
+6 Build source tarball:
+  From root of the SVN extract  
+  make dist
+
+
+Building, testing and packaging on Windows:
+-----------------------------
+Set up your environment as described above. The following instructions
+assume you have unpacked the source into \uimacpp-2.X.Y-incubating.
+
+1 Build the UIMA C++ framework in both release and debug:
+  cd \uimacpp-2.X.Y\src
+  winmake /build release
+  winmake /build debug
+
+2 Build and run the test suite:
+  cd \uimacpp-2.X.Y\src\test
+  devenv test.sln /build release
+  fvt
+
+3 Build the documentation:
+  Note: The documentation build requires Doxygen 1.3.6 or later.
+  cd \uimacpp-2.X.Y\docs
+  builddocs
+
+4 Build the SDK tree:
+  set MSVCRT_HOME to the directory with the msvc*.dll files required.
+  cd \uimacpp-2.X.Y
+  buildsdk target_dir
+
+5 Package the SDK zipfile by creating a compressed folder of 
+  target_dir\uimacpp into uimacpp-2.X.Y-bin.zip
+
+
+Building, testing and packaging on Mac OSX:
+-------------------------------------------
+Except for one problem with APR, building is the same here as on Linux.
+For the Intel-based Mac OSX machines we have tested with, the APR function
+to dynamically load shared libraries does not respect DYLD_LIBRARY_PATH.
+
+A fix is to patch dso/unix/dso.c as follows:
+
+26a27,31
+>#if defined(DSO_USE_DYLD)
+>#define DSO_USE_DLFCN
+>#undef DSO_USE_DYLD
+>#endif
+>
+
+
+Building the dependencies: APR, ICU, Xersec-c and Activemq-cpp
+--------------------------------------------------------------
+
+Download and build information for these libraries are at:
+  APR      - http://apr.apache.org/
+  ICU      - http://www.icu-project.org/
+  XERCES   - http://xml.apache.org/xerces-c/
+  ACTIVEMQ - http://activemq.apache.org/cms/download.html
+
+For UNIX users that cannot or do not want to install these at
+system root, specify DESTDIR for the install step. For example,
+after building APR, install using:
+
+  DESTDIR=`pwd` make install
+
+On Windows, the only activemq-cpp targets needed by uimacpp are ReleaseDLL and DebugDLL,
+ e.g. devenv vs2005-build/vs2005-activemq.vcproj /build ReleaseDLL
+
+Also, the APR library can be built by launching libapr.dsp or by following the
+instructions in Makefile.win.
+
+
+Disclaimer
+-----------
+
+Apache UIMA is an effort undergoing incubation at The Apache Software
+Foundation (ASF). Incubation is required of all newly accepted projects
+until a further review indicates that the infrastructure, communications,
+and decision making process have stabilized in a manner consistent with
+other successful ASF projects. While incubation status is not necessarily
+a reflection of the completeness or stability of the code, it does
+indicate that the project has yet to be fully endorsed by the ASF.