You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by David Benfell <be...@parts-unknown.org> on 2014/04/10 12:35:05 UTC

[users@httpd] undefined symbol: apr_crypto_init

Hi all,

I gather this is an apr-util problem: At apache 2.4 startup, I get
"undefined symbol: apr_crypto_init"

I built apr-util with rpmbuild. I checked the .spec file and it *does*
specify the crypto option (and the other options for ssl and nss that
seem to be related).

(I hope) I'm so close to finding my way through this upgrade from 2.2.
But I'm not finding anything helpful (at least at 3:30 in the
morning).

What do I need to do?

Thanks!
-- 
David Benfell <be...@parts-unknown.org>
See https://parts-unknown.org/node/2 if you don't understand the
attachment.

Re: [users@httpd] undefined symbol: apr_crypto_init

Posted by David Benfell <be...@parts-unknown.org>.
On Thu, Apr 10, 2014 at 06:07:53PM -0600, Jeff Trawick wrote:
>    On Thu, Apr 10, 2014 at 3:33 PM, David Benfell
>    I unfortunately missed your clear, earlier statement that you are using
>    the provided RPM specs which install apr + apr-util as system
>    libraries.  IMO that is not a good idea for most people, in case you
>    want to install arbitrary software from your system package repository
>    and have it use the apr + apr-util it is built with and at the same
>    time have your httpd use the apr + apr-util you selected for that
>    particular purpose.  I don't use the RPM builds myself, never install
>    into system directories, and don't really know what the considerations
>    are.  Sorry.

I think more seriously, I was trying to get too far ahead of my
distribution (Contabo 6.5). This became apparent when, having found a
way around this problem, I tackled php.

Recall that modules, including the one for php, need to be rebuilt for
the new version of apache.

Taking this on, I rapidly found even more ratholes. I decided it was
time for a distribution change.

I apologize for my delay in responding to this message. I'm now
running on Fedora 20, which comes with apache 2.4. But, just at the
stage where I lose mail every time, this seems to be going fairly
smoothly. (We'll see when I try sending this message.)

I have encountered problems on Fedora, but I think they're related to
Fedora's packaging. And I'm trying to get a question in on their
community about it. (Their forum server seems to have gone down.)

<snip>
> 
>    Same error as before, or something different?  Can you copy and paste
>    the exact message?

It was the same error.

>    I don't think your current LD_LIBRARY_PATH actually changes anything.

A reasonable suspicion. I'm unable to test it now. Sorry.
> 
>      I'm thinking I ought to be able to substitute apachectl for the
>      start
>      script with a symbolic link. Would this work? Any reason I
>      shouldn't?
> 
>    Where did you get /etc/init.d/httpd?  Is that from an RPM build you did
>    of httpd 2.4?

Yes, incredibly, the spec file seems to do everything including
instructing rpmbuild how to build that script. Was I surprised? Yes.
But it seems to me to be a strong argument in general for using
rpmbuild. That is, if you aren't trying to get too far ahead of your
distribution. CentOS 6.5 is just too 'stable' and this isn't the only
security-related issue I've had with it (I want Apache 2.4 for perfect
forwared secrecy).

-- 
David Benfell <be...@parts-unknown.org>
See https://parts-unknown.org/node/2 if you don't understand the
attachment.

Re: [users@httpd] undefined symbol: apr_crypto_init

Posted by Jeff Trawick <tr...@gmail.com>.
On Thu, Apr 10, 2014 at 3:33 PM, David Benfell <be...@parts-unknown.org>wrote:

> On Thu, Apr 10, 2014 at 02:14:02PM -0600, Jeff Trawick wrote:
> >    On Thu, Apr 10, 2014 at 2:05 PM, David Benfell
> >    <[1...@parts-unknown.org> wrote:
> >
> >    On Thu, Apr 10, 2014 at 01:38:00PM -0600, Eric Covener wrote:
> >    > On Thu, Apr 10, 2014 at 4:35 AM, David Benfell
> >    > <[2...@parts-unknown.org> wrote:
> >    > > apr_crypto_init
> >    >
> >    Maybe you built with the up-to-date apr-util (so httpd or some module
> >    thinks apr_crypto_init() exists) but an older level apr-util
> >    (system-provided?) is being used when you try to start httpd.
> >    As a test, try
> >    export LD_LIBRARY_PATH=/path/to/new/httpd/lib
> >    (or wherever you installed new apr-util)
> >    before starting httpd and see if that works.
> >
> Progress of a sort: There was definitely some cruft lying about from a
> previous 2.2 build. I deleted it. I set the environment variable
> LD_LIBRARY_PATH=/usr/lib64/apr-util-1 and apachectl start at least
> starts the server (I have other problems but I think they're
> related to php).
>

That apr-util-1 subdirectory is only used when loading apr-util extensions,
and I thought apr-util could find those on its own once libaprutil-1 was
loaded (but I may be wrong there).

LD_LIBRARY_PATH generally is updated to point to the directory
where libaprutil-1.so resides (when rpath can't help).

But I guess that on your platform /usr/lib64 is in the default library
search path, so you shouldn't need LD_LIBRARY_PATH at all.

Without the old cruft, is your LD_LIBRARY_PATH setting actually necessary?

I unfortunately missed your clear, earlier statement that you are using the
provided RPM specs which install apr + apr-util as system libraries.  IMO
that is not a good idea for most people, in case you want to install
arbitrary software from your system package repository and have it use the
apr + apr-util it is built with and at the same time have your httpd use
the apr + apr-util you selected for that particular purpose.  I don't use
the RPM builds myself, never install into system directories, and don't
really know what the considerations are.  Sorry.


> /etc/init.d/httpd start does not, even when I set the environment
> variable in the script right before the line that starts the daemon.
>

Same error as before, or something different?  Can you copy and paste the
exact message?

I don't think your current LD_LIBRARY_PATH actually changes anything.


>
> I'm thinking I ought to be able to substitute apachectl for the start
> script with a symbolic link. Would this work? Any reason I shouldn't?
>

Where did you get /etc/init.d/httpd?  Is that from an RPM build you did of
httpd 2.4?


>
> Thanks!
> --
> David Benfell <be...@parts-unknown.org>
> See https://parts-unknown.org/node/2 if you don't understand the
> attachment.
>



-- 
Born in Roswell... married an alien...
http://emptyhammock.com/
http://edjective.org/

Re: [users@httpd] undefined symbol: apr_crypto_init

Posted by David Benfell <be...@parts-unknown.org>.
On Thu, Apr 10, 2014 at 02:14:02PM -0600, Jeff Trawick wrote:
>    On Thu, Apr 10, 2014 at 2:05 PM, David Benfell
>    <[1...@parts-unknown.org> wrote:
> 
>    On Thu, Apr 10, 2014 at 01:38:00PM -0600, Eric Covener wrote:
>    > On Thu, Apr 10, 2014 at 4:35 AM, David Benfell
>    > <[2...@parts-unknown.org> wrote:
>    > > apr_crypto_init
>    >
>    Maybe you built with the up-to-date apr-util (so httpd or some module
>    thinks apr_crypto_init() exists) but an older level apr-util
>    (system-provided?) is being used when you try to start httpd.
>    As a test, try
>    export LD_LIBRARY_PATH=/path/to/new/httpd/lib
>    (or wherever you installed new apr-util)
>    before starting httpd and see if that works.
> 
Progress of a sort: There was definitely some cruft lying about from a
previous 2.2 build. I deleted it. I set the environment variable
LD_LIBRARY_PATH=/usr/lib64/apr-util-1 and apachectl start at least
starts the server (I have other problems but I think they're
related to php).

/etc/init.d/httpd start does not, even when I set the environment
variable in the script right before the line that starts the daemon.

I'm thinking I ought to be able to substitute apachectl for the start
script with a symbolic link. Would this work? Any reason I shouldn't?

Thanks!
-- 
David Benfell <be...@parts-unknown.org>
See https://parts-unknown.org/node/2 if you don't understand the
attachment.

Re: [users@httpd] undefined symbol: apr_crypto_init

Posted by Jeff Trawick <tr...@gmail.com>.
On Thu, Apr 10, 2014 at 2:05 PM, David Benfell <be...@parts-unknown.org>wrote:

> On Thu, Apr 10, 2014 at 01:38:00PM -0600, Eric Covener wrote:
> > On Thu, Apr 10, 2014 at 4:35 AM, David Benfell
> > <be...@parts-unknown.org> wrote:
> > > apr_crypto_init
> >
> > This phrase alone in a search engine gets you a number of hits saying
> > to upgrade APR.
> >
> >
> http://stackoverflow.com/questions/22048378/undefined-symbol-apr-crypto-init-during-apache-restart
>
> I have done so. It, and apr-util are the latest version.
>

Maybe you built with the up-to-date apr-util (so httpd or some module
thinks apr_crypto_init() exists) but an older level apr-util
(system-provided?) is being used when you try to start httpd.

As a test, try

export LD_LIBRARY_PATH=/path/to/new/httpd/lib

(or wherever you installed new apr-util)

before starting httpd and see if that works.



> --
> David Benfell <be...@parts-unknown.org>
> See https://parts-unknown.org/node/2 if you don't understand the
> attachment.
>



-- 
Born in Roswell... married an alien...
http://emptyhammock.com/
http://edjective.org/

Re: [users@httpd] undefined symbol: apr_crypto_init

Posted by David Benfell <be...@parts-unknown.org>.
On Thu, Apr 10, 2014 at 01:38:00PM -0600, Eric Covener wrote:
> On Thu, Apr 10, 2014 at 4:35 AM, David Benfell
> <be...@parts-unknown.org> wrote:
> > apr_crypto_init
> 
> This phrase alone in a search engine gets you a number of hits saying
> to upgrade APR.
> 
> http://stackoverflow.com/questions/22048378/undefined-symbol-apr-crypto-init-during-apache-restart

I have done so. It, and apr-util are the latest version.

-- 
David Benfell <be...@parts-unknown.org>
See https://parts-unknown.org/node/2 if you don't understand the
attachment.

Re: [users@httpd] undefined symbol: apr_crypto_init

Posted by Eric Covener <co...@gmail.com>.
On Thu, Apr 10, 2014 at 4:35 AM, David Benfell
<be...@parts-unknown.org> wrote:
> apr_crypto_init

This phrase alone in a search engine gets you a number of hits saying
to upgrade APR.

http://stackoverflow.com/questions/22048378/undefined-symbol-apr-crypto-init-during-apache-restart


-- 
Eric Covener
covener@gmail.com

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