You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Polina Georgieva <po...@gmail.com> on 2019/08/02 09:12:20 UTC

Apache Tomcat Native Library - compatibility clarification needed?

Hi all,



Would you please clarify the compatibility restrictions (if any) between
the Apache Tomcat Native Lib and its dependencies on one hand and between
Apache Tomcat server and the native lib.  My questions are based on the
information available here: http://tomcat.apache.org/native-doc/



1)     Is it possible (or at all advisable) to build the tc-native once and
then use it on a system that is not necessarily with the same versions of
dependencies or JVM as the ones it was built with? Or for productive
systems it is recommend always to compile on the actual system that the lib
will be running on. I’m specifically interested for Linux environment.

2)     Are there strict requirements for the dependencies versions, meaning
Tomcat Native Lib version X works only with APR version Y, OpenSSL version
Z, etc. ?

3)     Are there any strict compatibility mapping between the  native lib
version and the Tomcat server version? In other words could every Tomcat
version work smoothly with the latest tc-native version?



Thanks a lot!

Regards,

Polina

Re: Apache Tomcat Native Library - compatibility clarification needed?

Posted by Mark Thomas <ma...@apache.org>.
On 02/08/2019 10:12, Polina Georgieva wrote:
> Hi all,
> 
> Would you please clarify the compatibility restrictions (if any) between
> the Apache Tomcat Native Lib and its dependencies on one hand and between
> Apache Tomcat server and the native lib.  My questions are based on the
> information available here: http://tomcat.apache.org/native-doc/
> 
> 1)     Is it possible (or at all advisable) to build the tc-native once and
> then use it on a system that is not necessarily with the same versions of
> dependencies or JVM as the ones it was built with? Or for productive
> systems it is recommend always to compile on the actual system that the lib
> will be running on. I’m specifically interested for Linux environment.

The specific JVM version isn't that important. It will certainly work
with any current JVM and probably any JVM back at least as far as Java
1.3. You should be fine building it with one JVM and using it with another.

Generally, you want to compile against the versions of OpenSSL and APR
that you plan to use.

> 2)     Are there strict requirements for the dependencies versions, meaning
> Tomcat Native Lib version X works only with APR version Y, OpenSSL version
> Z, etc. ?

OpenSSL
Needs to be one of the currently supported versions. We tend to remove
the workarounds for features not present in older versions once they are
no longer supported.

APR
We try and build with the latest version. 1.7.x and 1.6.x should both be
fine. It will probably work with 1.5.x as well and maybe further back too.

> 3)     Are there any strict compatibility mapping between the  native lib
> version and the Tomcat server version? In other words could every Tomcat
> version work smoothly with the latest tc-native version?

You should be able to use the current Tomcat-Native library with any
previous Tomcat version. The converse is not true. Each Tomcat version
has a minimum required Tomcat Native version and a minimum recommended
version. You'll see log errors/warnings if you start Tomcat with a
version of the Native library that does not meet these minimums.

Mark

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: Apache Tomcat Native Library - compatibility clarification needed?

Posted by "André Warnier (tomcat)" <aw...@ice-sa.com>.
Hi.
Not a full response but an additional source.

On 02.08.2019 11:12, Polina Georgieva wrote:
> Hi all,
>
>
>
> Would you please clarify the compatibility restrictions (if any) between
> the Apache Tomcat Native Lib and its dependencies on one hand and between
> Apache Tomcat server and the native lib.  My questions are based on the
> information available here: http://tomcat.apache.org/native-doc/

You may also want to look at these pages :
http://tomcat.apache.org/whichversion.html
http://tomcat.apache.org/migration.html

>
>
>
> 1)     Is it possible (or at all advisable) to build the tc-native once and
> then use it on a system that is not necessarily with the same versions of
> dependencies or JVM as the ones it was built with? Or for productive
> systems it is recommend always to compile on the actual system that the lib
> will be running on. I’m specifically interested for Linux environment.

Again, not a full response, but some info :
For most Linux distributions, there exist a software package manager which allows to 
install a pre-determined version of tomcat, including the tc-native library, and they are 
guaranteed to work together and with the installed OS and the installed java JVM version.
(Because the "packagers" of these distributions normally make sure that this is so).
The only catch is that these versions are not necessarily always the latest available 
tomcat versions per the tomcat website. Some Linux distributions are better than others in 
terms of staying up-to-date, but generally-speaking anything related to security is pretty 
well followed-up.

If you want to always run the latest version as per the official tomcat website, then the 
"download" page of that website is your best choice, and whatever links you find there 
will always be for versions compatible with one another.
But be aware in that case, that the standard layout of the files of the official tomcat 
website download package, is probably different from the layout of the packaged tomcats 
available from your Linux distribution, and that in case of updates, you will not be able 
to switch so easily from one to the other method.

The "migration" page cited above provides additional information on that topic.


>
> 2)     Are there strict requirements for the dependencies versions, meaning
> Tomcat Native Lib version X works only with APR version Y, OpenSSL version
> Z, etc. ?
>
> 3)     Are there any strict compatibility mapping between the  native lib
> version and the Tomcat server version? In other words could every Tomcat
> version work smoothly with the latest tc-native version?
>
>
>
> Thanks a lot!
>
> Regards,
>
> Polina
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org