You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by Martin Grigorov <mg...@apache.org> on 2020/01/07 15:10:46 UTC

Running APR tests

Hello,

I have hard time making the APR related tests to pass here.

BuildBot config uses:

 command=['bash' , '-c' , 'echo
test.apr.loc=/home/buildslave/slave/tomcat-trunk/basepath/tomcat-native-1.2.23-bin/lib
>> build.properties'],

What exactly is expected to find in this lib folder ?
I've build tomcat-native locally and installed it at output/build/lib/,
i.e. there are several libtcnative-1*** files in it

   ./configure --with-apr=(which apr-1-config) --with-ssl=yes
--with-java-home=$JAVA_8_HOME
--prefix=/home/martin/git/apache/tomcat/output/build

Tomcat's build.xml has
<property name="test.apr.loc" value="${test.basedir}/bin"/>
which resolves to output/build/bin and there is nothing native there

No matter what I try it still fails with:
org.apache.catalina.LifecycleException: The configured protocol
[org.apache.coyote.http11.Http11AprProtocol] requires the APR/native
library which is not available

It fails the same way even with
    test.apr.loc=/home/martin/git/apache/tomcat/output/build/lib
in my build.properties

tomcat-native-1.2.23-*bin*/lib suggests that it contains binaries but I am
unable to find where to download this bundle from.
https://tomcat.apache.org/download-native.cgi has links to the sources.
There is a text "You can find binaries release too. You may download them
from HERE" but it points to
http://mirrors.netix.net/apache/tomcat/tomcat-connectors/native/1.2.23/binaries/
where I see only Windows binaries

Any pointers ?

Thanks!

Martin

Re: Running APR tests

Posted by Christopher Schultz <ch...@christopherschultz.net>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Martin,

On 1/7/20 10:10 AM, Martin Grigorov wrote:
> Hello,
> 
> I have hard time making the APR related tests to pass here.
> 
> BuildBot config uses:
> 
> command=['bash' , '-c' , 'echo 
> test.apr.loc=/home/buildslave/slave/tomcat-trunk/basepath/tomcat-nativ
e-1.2.23-bin/lib
>>>
> 
build.properties'],
> 
> What exactly is expected to find in this lib folder ? I've build
> tomcat-native locally and installed it at output/build/lib/, i.e.
> there are several libtcnative-1*** files in it
> 
> ./configure --with-apr=(which apr-1-config) --with-ssl=yes 
> --with-java-home=$JAVA_8_HOME 
> --prefix=/home/martin/git/apache/tomcat/output/build
> 
> Tomcat's build.xml has <property name="test.apr.loc"
> value="${test.basedir}/bin"/> which resolves to output/build/bin
> and there is nothing native there
> 
> No matter what I try it still fails with: 
> org.apache.catalina.LifecycleException: The configured protocol 
> [org.apache.coyote.http11.Http11AprProtocol] requires the
> APR/native library which is not available
> 
> It fails the same way even with 
> test.apr.loc=/home/martin/git/apache/tomcat/output/build/lib in my
> build.properties
> 
> tomcat-native-1.2.23-*bin*/lib suggests that it contains binaries
> but I am unable to find where to download this bundle from. 
> https://tomcat.apache.org/download-native.cgi has links to the
> sources. There is a text "You can find binaries release too. You
> may download them from HERE" but it points to 
> http://mirrors.netix.net/apache/tomcat/tomcat-connectors/native/1.2.23
/binaries/
>
> 
where I see only Windows binaries

I have a script which should build everything and perform all tests:
https://github.com/ChristopherSchultz/apache-tomcat-stuff/tree/master/bi
n

Look at test-tomcat-release.sh

I haven't run it in a while, and it's got no documentation, but it
should be somewhat readable if you are familiar with bash.

- -chris
-----BEGIN PGP SIGNATURE-----
Comment: Using GnuPG with Thunderbird - https://www.enigmail.net/

iQIzBAEBCAAdFiEEMmKgYcQvxMe7tcJcHPApP6U8pFgFAl4V3pUACgkQHPApP6U8
pFgdYw/8D890VJ4Sddep/svu5iBfWJZpgv7MqR1COt0a+k0nGdSh6NUnmNw+HZKH
a/ST31uPzFf9iMurgfZFAuIaLt9Cihgmeg5Dyt5fqVV0g+QFvCglaqbtqekyyxQj
/G5G7wxQoR/l0/qH43exDZNAftdFtaXsBMUULvOHDn5eKm4I2MeQdBRsc/5i8y1U
RDYLp/KtOSbQs27rbIvl+kxC09MLzwC56laCAGGljmhID0DtZv8X8jpVlWouUS+B
Wu3uDKmHmhpEpoa9Dx2yVEZT3zZXcFGPvVqudf0s00gPXGHZVJZxt+34/5NYvw87
0XhKG5zwPk4n1zBvGL3vjz1kuL8AwvsJFFhYyQxXvWxpj/v6IKgpQfIa4hEZ0FvG
yqZJeYeIinCCFuBGR7nYqUuaIEVAf3blfFjbXbMHycNAs5TWvgqGYdLzuEYzscq/
wt/+08DxfQ7bF+m8f5QgZaZCYdzlYxjvZZ0ce0kIsB9eUf6tuwN3e29EapcW6yJg
QoA2k3WxFOQSSK88LqUDAQLPRr9phX+BNWSp8+orzMyrY5vTSge72NHC4QbgkZF6
UIAFyC0PmlJtp+0JQKuhrD9rRtPcyhKsyJ3N7nvNDKYX9fXjc6OccyfCO1tLtHK+
7df1D220No4EQeif9HVT88R4rF8NM1gtFvBc63jPa5HqO6TwkuQ=
=WsvS
-----END PGP SIGNATURE-----

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


Re: Running APR tests

Posted by Martin Grigorov <mg...@apache.org>.
Hi,

On Wed, Jan 8, 2020 at 5:03 PM Martin Grigorov <mg...@apache.org> wrote:

> Remy,
>
> On Wed, Jan 8, 2020 at 3:09 PM Rémy Maucherat <re...@apache.org> wrote:
>
>> On Wed, Jan 8, 2020 at 12:59 PM Martin Grigorov <mg...@apache.org>
>> wrote:
>>
>>>
>>>
>>> On Tue, Jan 7, 2020 at 7:04 PM Martin Grigorov <mg...@apache.org>
>>> wrote:
>>>
>>>>
>>>>
>>>> On Tue, Jan 7, 2020, 17:59 Rémy Maucherat <re...@apache.org> wrote:
>>>>
>>>>> On Tue, Jan 7, 2020 at 4:35 PM Martin Grigorov <mg...@apache.org>
>>>>> wrote:
>>>>>
>>>>>> Hi Rémy,
>>>>>>
>>>>>> Thank you for helping me!
>>>>>>
>>>>>> On Tue, Jan 7, 2020 at 5:22 PM Rémy Maucherat <re...@apache.org>
>>>>>> wrote:
>>>>>>
>>>>>>> On Tue, Jan 7, 2020 at 4:11 PM Martin Grigorov <mg...@apache.org>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> I have hard time making the APR related tests to pass here.
>>>>>>>>
>>>>>>>> BuildBot config uses:
>>>>>>>>
>>>>>>>>  command=['bash' , '-c' , 'echo
>>>>>>>> test.apr.loc=/home/buildslave/slave/tomcat-trunk/basepath/tomcat-native-1.2.23-bin/lib
>>>>>>>> >> build.properties'],
>>>>>>>>
>>>>>>>> What exactly is expected to find in this lib folder ?
>>>>>>>> I've build tomcat-native locally and installed it at
>>>>>>>> output/build/lib/, i.e. there are several libtcnative-1*** files in it
>>>>>>>>
>>>>>>>>    ./configure --with-apr=(which apr-1-config) --with-ssl=yes
>>>>>>>> --with-java-home=$JAVA_8_HOME
>>>>>>>> --prefix=/home/martin/git/apache/tomcat/output/build
>>>>>>>>
>>>>>>>> Tomcat's build.xml has
>>>>>>>> <property name="test.apr.loc" value="${test.basedir}/bin"/>
>>>>>>>> which resolves to output/build/bin and there is nothing native there
>>>>>>>>
>>>>>>>> No matter what I try it still fails with:
>>>>>>>> org.apache.catalina.LifecycleException: The configured protocol
>>>>>>>> [org.apache.coyote.http11.Http11AprProtocol] requires the APR/native
>>>>>>>> library which is not available
>>>>>>>>
>>>>>>>> It fails the same way even with
>>>>>>>>     test.apr.loc=/home/martin/git/apache/tomcat/output/build/lib
>>>>>>>> in my build.properties
>>>>>>>>
>>>>>>>> tomcat-native-1.2.23-*bin*/lib suggests that it contains binaries
>>>>>>>> but I am unable to find where to download this bundle from.
>>>>>>>> https://tomcat.apache.org/download-native.cgi has links to the
>>>>>>>> sources.
>>>>>>>> There is a text "You can find binaries release too. You may
>>>>>>>> download them from HERE" but it points to
>>>>>>>> http://mirrors.netix.net/apache/tomcat/tomcat-connectors/native/1.2.23/binaries/
>>>>>>>> where I see only Windows binaries
>>>>>>>>
>>>>>>>> Any pointers ?
>>>>>>>>
>>>>>>>
>>>>>>> Well, you can put native in your OS library path. Failing this, this
>>>>>>> has been harmonized in Tomcat 9 to also load it from the "bin" folder in
>>>>>>> all cases (embedded like the testuite, standalone).
>>>>>>>
>>>>>>
>>>>>> (I use fish shell)
>>>>>>
>>>>>> $ set -x LD_LIBRARY_PATH
>>>>>> /home/martin/git/apache/tomcat/output/build/lib
>>>>>> $ echo $LD_LIBRARY_PATH
>>>>>> /home/martin/git/apache/tomcat/output/build/lib
>>>>>> $ ant test-only-apr
>>>>>>
>>>>>> still fails with the same error
>>>>>>
>>>>>> This is with master branch, i.e. Tomcat 9.x.
>>>>>> I copied all binaries to ./bin folder too
>>>>>>      cp output/build/lib/libtcnative-1.* output/build/bin/
>>>>>> but still the tests fail :-/
>>>>>>
>>>>>> Do you also have all the dependencies available, like APR and OpenSSL
>>>>> ? I see some confusion about APR above.
>>>>>
>>>>
>>>> I've installed libapr1-dev and ssllib-dev (or something similar, I'm
>>>> out now) as explained in the docu.
>>>> apr-1-config comes with libapr1-dev
>>>>
>>>
>>> Starting Tomcat itself loads the APR libraries fine if libtcnative-1*
>>> files are either in $CATALINA_HOME/bin or if they are in LD_LIBRARY_PATH.
>>> But if they are in $CATALINA_HOME/lib they are not found!
>>>
>>
>> Well, that lib folder was never used for that, use bin instead.
>>
>>
>>> Is there a need for a change in tomcat-native/native ?
>>> Because
>>>    ./configure --with-apr=/usr/bin/apr-1-config \
>>>             --with-java-home=/home/jfclere/JAVA/jdk1.7.0_80/ \
>>>             --with-ssl=yes \
>>>             --prefix=$CATALINA_HOME
>>> (from https://tomcat.apache.org/native-doc/) puts them
>>> in $CATALINA_HOME/lib
>>>
>>
>> Right so unless you do something about it later, this is not a libpath
>> location. You should look at the BUILDING and it's less ambiguous.
>>
>
> I am not sure whether you understood me.
> By issuing ./configure .... --prefix=$CATALINA_HOME it will prepare a
> configuration that `make install` will put the native libraries into
> $CATALINA_HOME/*lib*
> It's been a long time since I've touched Makefiles but I think the problem
> is at
> https://github.com/apache/tomcat-native/blob/66c8296137a80b35e24bda542bb2abb8d8dbae39/native/Makefile.in#L87
> I think it should use $(DESTDIR)$(bindir) instead as a target. This way
> there won't be a need of manual fixes after `make install`.
>

Bugzilla ticket: https://bz.apache.org/bugzilla/show_bug.cgi?id=64063
Pull Request: https://github.com/apache/tomcat-native/pull/6


>
>
>>
>> Rémy
>>
>>
>>>
>>>
>>>>
>>>>> Rémy
>>>>>
>>>>>

Re: Running APR tests

Posted by Martin Grigorov <mg...@apache.org>.
Remy,

On Wed, Jan 8, 2020 at 3:09 PM Rémy Maucherat <re...@apache.org> wrote:

> On Wed, Jan 8, 2020 at 12:59 PM Martin Grigorov <mg...@apache.org>
> wrote:
>
>>
>>
>> On Tue, Jan 7, 2020 at 7:04 PM Martin Grigorov <mg...@apache.org>
>> wrote:
>>
>>>
>>>
>>> On Tue, Jan 7, 2020, 17:59 Rémy Maucherat <re...@apache.org> wrote:
>>>
>>>> On Tue, Jan 7, 2020 at 4:35 PM Martin Grigorov <mg...@apache.org>
>>>> wrote:
>>>>
>>>>> Hi Rémy,
>>>>>
>>>>> Thank you for helping me!
>>>>>
>>>>> On Tue, Jan 7, 2020 at 5:22 PM Rémy Maucherat <re...@apache.org> wrote:
>>>>>
>>>>>> On Tue, Jan 7, 2020 at 4:11 PM Martin Grigorov <mg...@apache.org>
>>>>>> wrote:
>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> I have hard time making the APR related tests to pass here.
>>>>>>>
>>>>>>> BuildBot config uses:
>>>>>>>
>>>>>>>  command=['bash' , '-c' , 'echo
>>>>>>> test.apr.loc=/home/buildslave/slave/tomcat-trunk/basepath/tomcat-native-1.2.23-bin/lib
>>>>>>> >> build.properties'],
>>>>>>>
>>>>>>> What exactly is expected to find in this lib folder ?
>>>>>>> I've build tomcat-native locally and installed it at
>>>>>>> output/build/lib/, i.e. there are several libtcnative-1*** files in it
>>>>>>>
>>>>>>>    ./configure --with-apr=(which apr-1-config) --with-ssl=yes
>>>>>>> --with-java-home=$JAVA_8_HOME
>>>>>>> --prefix=/home/martin/git/apache/tomcat/output/build
>>>>>>>
>>>>>>> Tomcat's build.xml has
>>>>>>> <property name="test.apr.loc" value="${test.basedir}/bin"/>
>>>>>>> which resolves to output/build/bin and there is nothing native there
>>>>>>>
>>>>>>> No matter what I try it still fails with:
>>>>>>> org.apache.catalina.LifecycleException: The configured protocol
>>>>>>> [org.apache.coyote.http11.Http11AprProtocol] requires the APR/native
>>>>>>> library which is not available
>>>>>>>
>>>>>>> It fails the same way even with
>>>>>>>     test.apr.loc=/home/martin/git/apache/tomcat/output/build/lib
>>>>>>> in my build.properties
>>>>>>>
>>>>>>> tomcat-native-1.2.23-*bin*/lib suggests that it contains binaries
>>>>>>> but I am unable to find where to download this bundle from.
>>>>>>> https://tomcat.apache.org/download-native.cgi has links to the
>>>>>>> sources.
>>>>>>> There is a text "You can find binaries release too. You may download
>>>>>>> them from HERE" but it points to
>>>>>>> http://mirrors.netix.net/apache/tomcat/tomcat-connectors/native/1.2.23/binaries/
>>>>>>> where I see only Windows binaries
>>>>>>>
>>>>>>> Any pointers ?
>>>>>>>
>>>>>>
>>>>>> Well, you can put native in your OS library path. Failing this, this
>>>>>> has been harmonized in Tomcat 9 to also load it from the "bin" folder in
>>>>>> all cases (embedded like the testuite, standalone).
>>>>>>
>>>>>
>>>>> (I use fish shell)
>>>>>
>>>>> $ set -x LD_LIBRARY_PATH
>>>>> /home/martin/git/apache/tomcat/output/build/lib
>>>>> $ echo $LD_LIBRARY_PATH
>>>>> /home/martin/git/apache/tomcat/output/build/lib
>>>>> $ ant test-only-apr
>>>>>
>>>>> still fails with the same error
>>>>>
>>>>> This is with master branch, i.e. Tomcat 9.x.
>>>>> I copied all binaries to ./bin folder too
>>>>>      cp output/build/lib/libtcnative-1.* output/build/bin/
>>>>> but still the tests fail :-/
>>>>>
>>>>> Do you also have all the dependencies available, like APR and OpenSSL
>>>> ? I see some confusion about APR above.
>>>>
>>>
>>> I've installed libapr1-dev and ssllib-dev (or something similar, I'm out
>>> now) as explained in the docu.
>>> apr-1-config comes with libapr1-dev
>>>
>>
>> Starting Tomcat itself loads the APR libraries fine if libtcnative-1*
>> files are either in $CATALINA_HOME/bin or if they are in LD_LIBRARY_PATH.
>> But if they are in $CATALINA_HOME/lib they are not found!
>>
>
> Well, that lib folder was never used for that, use bin instead.
>
>
>> Is there a need for a change in tomcat-native/native ?
>> Because
>>    ./configure --with-apr=/usr/bin/apr-1-config \
>>             --with-java-home=/home/jfclere/JAVA/jdk1.7.0_80/ \
>>             --with-ssl=yes \
>>             --prefix=$CATALINA_HOME
>> (from https://tomcat.apache.org/native-doc/) puts them
>> in $CATALINA_HOME/lib
>>
>
> Right so unless you do something about it later, this is not a libpath
> location. You should look at the BUILDING and it's less ambiguous.
>

I am not sure whether you understood me.
By issuing ./configure .... --prefix=$CATALINA_HOME it will prepare a
configuration that `make install` will put the native libraries into
$CATALINA_HOME/*lib*
It's been a long time since I've touched Makefiles but I think the problem
is at
https://github.com/apache/tomcat-native/blob/66c8296137a80b35e24bda542bb2abb8d8dbae39/native/Makefile.in#L87
I think it should use $(DESTDIR)$(bindir) instead as a target. This way
there won't be a need of manual fixes after `make install`.


>
> Rémy
>
>
>>
>>
>>>
>>>> Rémy
>>>>
>>>>

Re: Running APR tests

Posted by Rémy Maucherat <re...@apache.org>.
On Wed, Jan 8, 2020 at 12:59 PM Martin Grigorov <mg...@apache.org>
wrote:

>
>
> On Tue, Jan 7, 2020 at 7:04 PM Martin Grigorov <mg...@apache.org>
> wrote:
>
>>
>>
>> On Tue, Jan 7, 2020, 17:59 Rémy Maucherat <re...@apache.org> wrote:
>>
>>> On Tue, Jan 7, 2020 at 4:35 PM Martin Grigorov <mg...@apache.org>
>>> wrote:
>>>
>>>> Hi Rémy,
>>>>
>>>> Thank you for helping me!
>>>>
>>>> On Tue, Jan 7, 2020 at 5:22 PM Rémy Maucherat <re...@apache.org> wrote:
>>>>
>>>>> On Tue, Jan 7, 2020 at 4:11 PM Martin Grigorov <mg...@apache.org>
>>>>> wrote:
>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> I have hard time making the APR related tests to pass here.
>>>>>>
>>>>>> BuildBot config uses:
>>>>>>
>>>>>>  command=['bash' , '-c' , 'echo
>>>>>> test.apr.loc=/home/buildslave/slave/tomcat-trunk/basepath/tomcat-native-1.2.23-bin/lib
>>>>>> >> build.properties'],
>>>>>>
>>>>>> What exactly is expected to find in this lib folder ?
>>>>>> I've build tomcat-native locally and installed it at
>>>>>> output/build/lib/, i.e. there are several libtcnative-1*** files in it
>>>>>>
>>>>>>    ./configure --with-apr=(which apr-1-config) --with-ssl=yes
>>>>>> --with-java-home=$JAVA_8_HOME
>>>>>> --prefix=/home/martin/git/apache/tomcat/output/build
>>>>>>
>>>>>> Tomcat's build.xml has
>>>>>> <property name="test.apr.loc" value="${test.basedir}/bin"/>
>>>>>> which resolves to output/build/bin and there is nothing native there
>>>>>>
>>>>>> No matter what I try it still fails with:
>>>>>> org.apache.catalina.LifecycleException: The configured protocol
>>>>>> [org.apache.coyote.http11.Http11AprProtocol] requires the APR/native
>>>>>> library which is not available
>>>>>>
>>>>>> It fails the same way even with
>>>>>>     test.apr.loc=/home/martin/git/apache/tomcat/output/build/lib
>>>>>> in my build.properties
>>>>>>
>>>>>> tomcat-native-1.2.23-*bin*/lib suggests that it contains binaries
>>>>>> but I am unable to find where to download this bundle from.
>>>>>> https://tomcat.apache.org/download-native.cgi has links to the
>>>>>> sources.
>>>>>> There is a text "You can find binaries release too. You may download
>>>>>> them from HERE" but it points to
>>>>>> http://mirrors.netix.net/apache/tomcat/tomcat-connectors/native/1.2.23/binaries/
>>>>>> where I see only Windows binaries
>>>>>>
>>>>>> Any pointers ?
>>>>>>
>>>>>
>>>>> Well, you can put native in your OS library path. Failing this, this
>>>>> has been harmonized in Tomcat 9 to also load it from the "bin" folder in
>>>>> all cases (embedded like the testuite, standalone).
>>>>>
>>>>
>>>> (I use fish shell)
>>>>
>>>> $ set -x LD_LIBRARY_PATH /home/martin/git/apache/tomcat/output/build/lib
>>>> $ echo $LD_LIBRARY_PATH
>>>> /home/martin/git/apache/tomcat/output/build/lib
>>>> $ ant test-only-apr
>>>>
>>>> still fails with the same error
>>>>
>>>> This is with master branch, i.e. Tomcat 9.x.
>>>> I copied all binaries to ./bin folder too
>>>>      cp output/build/lib/libtcnative-1.* output/build/bin/
>>>> but still the tests fail :-/
>>>>
>>>> Do you also have all the dependencies available, like APR and OpenSSL ?
>>> I see some confusion about APR above.
>>>
>>
>> I've installed libapr1-dev and ssllib-dev (or something similar, I'm out
>> now) as explained in the docu.
>> apr-1-config comes with libapr1-dev
>>
>
> Starting Tomcat itself loads the APR libraries fine if libtcnative-1*
> files are either in $CATALINA_HOME/bin or if they are in LD_LIBRARY_PATH.
> But if they are in $CATALINA_HOME/lib they are not found!
>

Well, that lib folder was never used for that, use bin instead.


> Is there a need for a change in tomcat-native/native ?
> Because
>    ./configure --with-apr=/usr/bin/apr-1-config \
>             --with-java-home=/home/jfclere/JAVA/jdk1.7.0_80/ \
>             --with-ssl=yes \
>             --prefix=$CATALINA_HOME
> (from https://tomcat.apache.org/native-doc/) puts them
> in $CATALINA_HOME/lib
>

Right so unless you do something about it later, this is not a libpath
location. You should look at the BUILDING and it's less ambiguous.

Rémy


>
>
>>
>>> Rémy
>>>
>>>

Re: Running APR tests

Posted by Martin Grigorov <mg...@apache.org>.
On Tue, Jan 7, 2020 at 7:04 PM Martin Grigorov <mg...@apache.org> wrote:

>
>
> On Tue, Jan 7, 2020, 17:59 Rémy Maucherat <re...@apache.org> wrote:
>
>> On Tue, Jan 7, 2020 at 4:35 PM Martin Grigorov <mg...@apache.org>
>> wrote:
>>
>>> Hi Rémy,
>>>
>>> Thank you for helping me!
>>>
>>> On Tue, Jan 7, 2020 at 5:22 PM Rémy Maucherat <re...@apache.org> wrote:
>>>
>>>> On Tue, Jan 7, 2020 at 4:11 PM Martin Grigorov <mg...@apache.org>
>>>> wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> I have hard time making the APR related tests to pass here.
>>>>>
>>>>> BuildBot config uses:
>>>>>
>>>>>  command=['bash' , '-c' , 'echo
>>>>> test.apr.loc=/home/buildslave/slave/tomcat-trunk/basepath/tomcat-native-1.2.23-bin/lib
>>>>> >> build.properties'],
>>>>>
>>>>> What exactly is expected to find in this lib folder ?
>>>>> I've build tomcat-native locally and installed it at
>>>>> output/build/lib/, i.e. there are several libtcnative-1*** files in it
>>>>>
>>>>>    ./configure --with-apr=(which apr-1-config) --with-ssl=yes
>>>>> --with-java-home=$JAVA_8_HOME
>>>>> --prefix=/home/martin/git/apache/tomcat/output/build
>>>>>
>>>>> Tomcat's build.xml has
>>>>> <property name="test.apr.loc" value="${test.basedir}/bin"/>
>>>>> which resolves to output/build/bin and there is nothing native there
>>>>>
>>>>> No matter what I try it still fails with:
>>>>> org.apache.catalina.LifecycleException: The configured protocol
>>>>> [org.apache.coyote.http11.Http11AprProtocol] requires the APR/native
>>>>> library which is not available
>>>>>
>>>>> It fails the same way even with
>>>>>     test.apr.loc=/home/martin/git/apache/tomcat/output/build/lib
>>>>> in my build.properties
>>>>>
>>>>> tomcat-native-1.2.23-*bin*/lib suggests that it contains binaries but
>>>>> I am unable to find where to download this bundle from.
>>>>> https://tomcat.apache.org/download-native.cgi has links to the
>>>>> sources.
>>>>> There is a text "You can find binaries release too. You may download
>>>>> them from HERE" but it points to
>>>>> http://mirrors.netix.net/apache/tomcat/tomcat-connectors/native/1.2.23/binaries/
>>>>> where I see only Windows binaries
>>>>>
>>>>> Any pointers ?
>>>>>
>>>>
>>>> Well, you can put native in your OS library path. Failing this, this
>>>> has been harmonized in Tomcat 9 to also load it from the "bin" folder in
>>>> all cases (embedded like the testuite, standalone).
>>>>
>>>
>>> (I use fish shell)
>>>
>>> $ set -x LD_LIBRARY_PATH /home/martin/git/apache/tomcat/output/build/lib
>>> $ echo $LD_LIBRARY_PATH
>>> /home/martin/git/apache/tomcat/output/build/lib
>>> $ ant test-only-apr
>>>
>>> still fails with the same error
>>>
>>> This is with master branch, i.e. Tomcat 9.x.
>>> I copied all binaries to ./bin folder too
>>>      cp output/build/lib/libtcnative-1.* output/build/bin/
>>> but still the tests fail :-/
>>>
>>> Do you also have all the dependencies available, like APR and OpenSSL ?
>> I see some confusion about APR above.
>>
>
> I've installed libapr1-dev and ssllib-dev (or something similar, I'm out
> now) as explained in the docu.
> apr-1-config comes with libapr1-dev
>

Starting Tomcat itself loads the APR libraries fine if libtcnative-1* files
are either in $CATALINA_HOME/bin or if they are in LD_LIBRARY_PATH.
But if they are in $CATALINA_HOME/lib they are not found!
Is there a need for a change in tomcat-native/native ?
Because
   ./configure --with-apr=/usr/bin/apr-1-config \
            --with-java-home=/home/jfclere/JAVA/jdk1.7.0_80/ \
            --with-ssl=yes \
            --prefix=$CATALINA_HOME
(from https://tomcat.apache.org/native-doc/) puts them in $CATALINA_HOME/lib


>
>> Rémy
>>
>>

Re: Running APR tests

Posted by Martin Grigorov <mg...@apache.org>.
On Tue, Jan 7, 2020, 17:59 Rémy Maucherat <re...@apache.org> wrote:

> On Tue, Jan 7, 2020 at 4:35 PM Martin Grigorov <mg...@apache.org>
> wrote:
>
>> Hi Rémy,
>>
>> Thank you for helping me!
>>
>> On Tue, Jan 7, 2020 at 5:22 PM Rémy Maucherat <re...@apache.org> wrote:
>>
>>> On Tue, Jan 7, 2020 at 4:11 PM Martin Grigorov <mg...@apache.org>
>>> wrote:
>>>
>>>> Hello,
>>>>
>>>> I have hard time making the APR related tests to pass here.
>>>>
>>>> BuildBot config uses:
>>>>
>>>>  command=['bash' , '-c' , 'echo
>>>> test.apr.loc=/home/buildslave/slave/tomcat-trunk/basepath/tomcat-native-1.2.23-bin/lib
>>>> >> build.properties'],
>>>>
>>>> What exactly is expected to find in this lib folder ?
>>>> I've build tomcat-native locally and installed it at output/build/lib/,
>>>> i.e. there are several libtcnative-1*** files in it
>>>>
>>>>    ./configure --with-apr=(which apr-1-config) --with-ssl=yes
>>>> --with-java-home=$JAVA_8_HOME
>>>> --prefix=/home/martin/git/apache/tomcat/output/build
>>>>
>>>> Tomcat's build.xml has
>>>> <property name="test.apr.loc" value="${test.basedir}/bin"/>
>>>> which resolves to output/build/bin and there is nothing native there
>>>>
>>>> No matter what I try it still fails with:
>>>> org.apache.catalina.LifecycleException: The configured protocol
>>>> [org.apache.coyote.http11.Http11AprProtocol] requires the APR/native
>>>> library which is not available
>>>>
>>>> It fails the same way even with
>>>>     test.apr.loc=/home/martin/git/apache/tomcat/output/build/lib
>>>> in my build.properties
>>>>
>>>> tomcat-native-1.2.23-*bin*/lib suggests that it contains binaries but
>>>> I am unable to find where to download this bundle from.
>>>> https://tomcat.apache.org/download-native.cgi has links to the sources.
>>>> There is a text "You can find binaries release too. You may download
>>>> them from HERE" but it points to
>>>> http://mirrors.netix.net/apache/tomcat/tomcat-connectors/native/1.2.23/binaries/
>>>> where I see only Windows binaries
>>>>
>>>> Any pointers ?
>>>>
>>>
>>> Well, you can put native in your OS library path. Failing this, this has
>>> been harmonized in Tomcat 9 to also load it from the "bin" folder in all
>>> cases (embedded like the testuite, standalone).
>>>
>>
>> (I use fish shell)
>>
>> $ set -x LD_LIBRARY_PATH /home/martin/git/apache/tomcat/output/build/lib
>> $ echo $LD_LIBRARY_PATH
>> /home/martin/git/apache/tomcat/output/build/lib
>> $ ant test-only-apr
>>
>> still fails with the same error
>>
>> This is with master branch, i.e. Tomcat 9.x.
>> I copied all binaries to ./bin folder too
>>      cp output/build/lib/libtcnative-1.* output/build/bin/
>> but still the tests fail :-/
>>
>> Do you also have all the dependencies available, like APR and OpenSSL ? I
> see some confusion about APR above.
>

I've installed libapr1-dev and ssllib-dev (or something similar, I'm out
now) as explained in the docu.
apr-1-config comes with libapr1-dev


> Rémy
>
>

Re: Running APR tests

Posted by Rémy Maucherat <re...@apache.org>.
On Tue, Jan 7, 2020 at 4:35 PM Martin Grigorov <mg...@apache.org> wrote:

> Hi Rémy,
>
> Thank you for helping me!
>
> On Tue, Jan 7, 2020 at 5:22 PM Rémy Maucherat <re...@apache.org> wrote:
>
>> On Tue, Jan 7, 2020 at 4:11 PM Martin Grigorov <mg...@apache.org>
>> wrote:
>>
>>> Hello,
>>>
>>> I have hard time making the APR related tests to pass here.
>>>
>>> BuildBot config uses:
>>>
>>>  command=['bash' , '-c' , 'echo
>>> test.apr.loc=/home/buildslave/slave/tomcat-trunk/basepath/tomcat-native-1.2.23-bin/lib
>>> >> build.properties'],
>>>
>>> What exactly is expected to find in this lib folder ?
>>> I've build tomcat-native locally and installed it at output/build/lib/,
>>> i.e. there are several libtcnative-1*** files in it
>>>
>>>    ./configure --with-apr=(which apr-1-config) --with-ssl=yes
>>> --with-java-home=$JAVA_8_HOME
>>> --prefix=/home/martin/git/apache/tomcat/output/build
>>>
>>> Tomcat's build.xml has
>>> <property name="test.apr.loc" value="${test.basedir}/bin"/>
>>> which resolves to output/build/bin and there is nothing native there
>>>
>>> No matter what I try it still fails with:
>>> org.apache.catalina.LifecycleException: The configured protocol
>>> [org.apache.coyote.http11.Http11AprProtocol] requires the APR/native
>>> library which is not available
>>>
>>> It fails the same way even with
>>>     test.apr.loc=/home/martin/git/apache/tomcat/output/build/lib
>>> in my build.properties
>>>
>>> tomcat-native-1.2.23-*bin*/lib suggests that it contains binaries but I
>>> am unable to find where to download this bundle from.
>>> https://tomcat.apache.org/download-native.cgi has links to the sources.
>>> There is a text "You can find binaries release too. You may download
>>> them from HERE" but it points to
>>> http://mirrors.netix.net/apache/tomcat/tomcat-connectors/native/1.2.23/binaries/
>>> where I see only Windows binaries
>>>
>>> Any pointers ?
>>>
>>
>> Well, you can put native in your OS library path. Failing this, this has
>> been harmonized in Tomcat 9 to also load it from the "bin" folder in all
>> cases (embedded like the testuite, standalone).
>>
>
> (I use fish shell)
>
> $ set -x LD_LIBRARY_PATH /home/martin/git/apache/tomcat/output/build/lib
> $ echo $LD_LIBRARY_PATH
> /home/martin/git/apache/tomcat/output/build/lib
> $ ant test-only-apr
>
> still fails with the same error
>
> This is with master branch, i.e. Tomcat 9.x.
> I copied all binaries to ./bin folder too
>      cp output/build/lib/libtcnative-1.* output/build/bin/
> but still the tests fail :-/
>
> Do you also have all the dependencies available, like APR and OpenSSL ? I
see some confusion about APR above.

Rémy

Re: Running APR tests

Posted by Martin Grigorov <mg...@apache.org>.
Hi Rémy,

Thank you for helping me!

On Tue, Jan 7, 2020 at 5:22 PM Rémy Maucherat <re...@apache.org> wrote:

> On Tue, Jan 7, 2020 at 4:11 PM Martin Grigorov <mg...@apache.org>
> wrote:
>
>> Hello,
>>
>> I have hard time making the APR related tests to pass here.
>>
>> BuildBot config uses:
>>
>>  command=['bash' , '-c' , 'echo
>> test.apr.loc=/home/buildslave/slave/tomcat-trunk/basepath/tomcat-native-1.2.23-bin/lib
>> >> build.properties'],
>>
>> What exactly is expected to find in this lib folder ?
>> I've build tomcat-native locally and installed it at output/build/lib/,
>> i.e. there are several libtcnative-1*** files in it
>>
>>    ./configure --with-apr=(which apr-1-config) --with-ssl=yes
>> --with-java-home=$JAVA_8_HOME
>> --prefix=/home/martin/git/apache/tomcat/output/build
>>
>> Tomcat's build.xml has
>> <property name="test.apr.loc" value="${test.basedir}/bin"/>
>> which resolves to output/build/bin and there is nothing native there
>>
>> No matter what I try it still fails with:
>> org.apache.catalina.LifecycleException: The configured protocol
>> [org.apache.coyote.http11.Http11AprProtocol] requires the APR/native
>> library which is not available
>>
>> It fails the same way even with
>>     test.apr.loc=/home/martin/git/apache/tomcat/output/build/lib
>> in my build.properties
>>
>> tomcat-native-1.2.23-*bin*/lib suggests that it contains binaries but I
>> am unable to find where to download this bundle from.
>> https://tomcat.apache.org/download-native.cgi has links to the sources.
>> There is a text "You can find binaries release too. You may download them
>> from HERE" but it points to
>> http://mirrors.netix.net/apache/tomcat/tomcat-connectors/native/1.2.23/binaries/
>> where I see only Windows binaries
>>
>> Any pointers ?
>>
>
> Well, you can put native in your OS library path. Failing this, this has
> been harmonized in Tomcat 9 to also load it from the "bin" folder in all
> cases (embedded like the testuite, standalone).
>

(I use fish shell)

$ set -x LD_LIBRARY_PATH /home/martin/git/apache/tomcat/output/build/lib
$ echo $LD_LIBRARY_PATH
/home/martin/git/apache/tomcat/output/build/lib
$ ant test-only-apr

still fails with the same error

This is with master branch, i.e. Tomcat 9.x.
I copied all binaries to ./bin folder too
     cp output/build/lib/libtcnative-1.* output/build/bin/
but still the tests fail :-/


> Rémy
>

Re: Running APR tests

Posted by Rémy Maucherat <re...@apache.org>.
On Tue, Jan 7, 2020 at 4:11 PM Martin Grigorov <mg...@apache.org> wrote:

> Hello,
>
> I have hard time making the APR related tests to pass here.
>
> BuildBot config uses:
>
>  command=['bash' , '-c' , 'echo
> test.apr.loc=/home/buildslave/slave/tomcat-trunk/basepath/tomcat-native-1.2.23-bin/lib
> >> build.properties'],
>
> What exactly is expected to find in this lib folder ?
> I've build tomcat-native locally and installed it at output/build/lib/,
> i.e. there are several libtcnative-1*** files in it
>
>    ./configure --with-apr=(which apr-1-config) --with-ssl=yes
> --with-java-home=$JAVA_8_HOME
> --prefix=/home/martin/git/apache/tomcat/output/build
>
> Tomcat's build.xml has
> <property name="test.apr.loc" value="${test.basedir}/bin"/>
> which resolves to output/build/bin and there is nothing native there
>
> No matter what I try it still fails with:
> org.apache.catalina.LifecycleException: The configured protocol
> [org.apache.coyote.http11.Http11AprProtocol] requires the APR/native
> library which is not available
>
> It fails the same way even with
>     test.apr.loc=/home/martin/git/apache/tomcat/output/build/lib
> in my build.properties
>
> tomcat-native-1.2.23-*bin*/lib suggests that it contains binaries but I
> am unable to find where to download this bundle from.
> https://tomcat.apache.org/download-native.cgi has links to the sources.
> There is a text "You can find binaries release too. You may download them
> from HERE" but it points to
> http://mirrors.netix.net/apache/tomcat/tomcat-connectors/native/1.2.23/binaries/
> where I see only Windows binaries
>
> Any pointers ?
>

Well, you can put native in your OS library path. Failing this, this has
been harmonized in Tomcat 9 to also load it from the "bin" folder in all
cases (embedded like the testuite, standalone).

Rémy