Return-Path: X-Original-To: apmail-tomcat-dev-archive@www.apache.org Delivered-To: apmail-tomcat-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 0DEF99C77 for ; Thu, 23 Feb 2012 19:47:21 +0000 (UTC) Received: (qmail 47999 invoked by uid 500); 23 Feb 2012 19:47:20 -0000 Delivered-To: apmail-tomcat-dev-archive@tomcat.apache.org Received: (qmail 47931 invoked by uid 500); 23 Feb 2012 19:47:20 -0000 Mailing-List: contact dev-help@tomcat.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Tomcat Developers List" Delivered-To: mailing list dev@tomcat.apache.org Received: (qmail 47922 invoked by uid 99); 23 Feb 2012 19:47:20 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Feb 2012 19:47:20 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Feb 2012 19:47:18 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id E627823888E7 for ; Thu, 23 Feb 2012 19:46:58 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1292924 - /tomcat/native/branches/1.1.x/native/BUILDING Date: Thu, 23 Feb 2012 19:46:58 -0000 To: dev@tomcat.apache.org From: mturk@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20120223194658.E627823888E7@eris.apache.org> Author: mturk Date: Thu Feb 23 19:46:58 2012 New Revision: 1292924 URL: http://svn.apache.org/viewvc?rev=1292924&view=rev Log: Explain how to build tcnative with statically linked apr and openssl Modified: tomcat/native/branches/1.1.x/native/BUILDING Modified: tomcat/native/branches/1.1.x/native/BUILDING URL: http://svn.apache.org/viewvc/tomcat/native/branches/1.1.x/native/BUILDING?rev=1292924&r1=1292923&r2=1292924&view=diff ============================================================================== --- tomcat/native/branches/1.1.x/native/BUILDING (original) +++ tomcat/native/branches/1.1.x/native/BUILDING Thu Feb 23 19:46:58 2012 @@ -15,32 +15,42 @@ limitations under the License. ================================================================================ - Building from source package: - configure --with-apr=apr_install_location --with-ssl=openssl_install_location - make - - Building from the cvs tree: - sh buildconf --with-apr=apr_source_location. - configure --with-apr=apr_install_location --with-ssl=openssl_install_location - make - - Testing the build: - The make should produce a .so file named libtcnative-1.so. - Build the jar containing the examples by - cd .. - ant jar +Building from source package +----------------------------- + +> configure --with-apr=apr_install_location --with-ssl=openssl_install_location +> make + +Building from the svn tree +-------------------------- + +> sh buildconf --with-apr=apr_source_location. +> configure --with-apr=apr_install_location --with-ssl=openssl_install_location +> make + +Testing the build +----------------- + +The make should produce a .so file named libtcnative-1.so. +Build the jar containing the examples by + +> cd .. +> ant jar Run one of the example (the echo one): - ant run-echo +> ant run-echo - Using it in Tomcat: - 1 - In use of conf/server.xml: - protocol="org.apache.coyote.http11.Http11AprProtocol" - 2 - In bin/setenv.sh add the following: - CATALINA_OPTS="$CATALINA_OPTS -Djava.library.path=tclib_location" - In my machine I am using: - /home/jfclere/native/native/.libs for tclib_location +Using it in Tomcat +------------------ -NOTES: +1. In use of conf/server.xml: + protocol="org.apache.coyote.http11.Http11AprProtocol" +2. In bin/setenv.sh add the following: + CATALINA_OPTS="$CATALINA_OPTS -Djava.library.path=tclib_location" + In my machine I am using: + /home/jfclere/native/native/.libs for tclib_location + +NOTES +----- - configure --disable-openssl: Configure without ssl support. - To use it in Tomcat you may have to add in bin/setenv.sh: LD_LIBRARY_PATH=openssl_install_location/lib; export LD_LIBRARY_PATH @@ -49,3 +59,42 @@ NOTES: - For MAC OS X you must manually add a link cd ${tcnative installdir} ln -d libtcnative-1.dylib libtcnative-1.jnilib + + +Building statically linked library on unixes +-------------------------------------------- + +To statically link apr and openssl dependencies use the following +procedure. + +You will need to build static version of openssl library. + +> ./config --prefix=~/natives/openssl no-shared -fPIC +> make +> make install_sw + +Note that for solaris platform you should use -KPIC instead -fPIC +so that library is compiled with position independent code. + +Apr by default build both static and synamic libraries. + +> ./configure --prefix=~/natives/apr +> make +> make install + +After that edit the ~/natives/apr/lib/libapr-1.la file +and comment or delete the following sections: +dlname='...' and library_names='...' +This is needed so that libtool picks the static version of the library. + +Build Tomcat native by executing + +> ./configure --with-apr=~/natives/apr --with-ssl=~/natives/openssl --prefix=~/natives/tomcat +> make +> make install + +Thats it. You have just build libtchative-1.so with statically linked +apr and openssl. + + + --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org For additional commands, e-mail: dev-help@tomcat.apache.org