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.