You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apr.apache.org by "Dan Mahoney, System Admin" <da...@prime.gushi.org> on 2007/11/20 01:53:25 UTC

Build difficuties for apache 2.2.6

Hello all.  I am having some trouble building apache 2.2.6 on FreeBSD 
6.2-PRERELEASE, and believe it's related to the bundled APR.  I'm doing it 
straight from source, not ports.

I've tried contacting the apache-users mailing list, both the maintainers 
of the FreeBSD ports (apr and httpd), as well as at least one APR 
committer.  No reply, anywhere, which is frustrating because I'm willing 
to help gather data to fix this issue, I just don't know what people need.

If anyone has any ideas, please let me know

Here's the story:

I just tried to build apache 2.2.6 from scratch.

I, for various reasons of wanting to keep apache separate from other 
things, for example, to virtualize my apache users, prefer everything in a 
single dir -- so the ports route isn't for me.

Because apr-db42 had been installed as part of a subversion requirement 
(not sure why), it caused my apache build to look in nonexistent places 
for libraries.

%apr-1-config --apr-libtool
/usr/local/build-1/libtool

(the above path doesn't even exist)

To fix this (and not break the svn port), I resorted to using 
--with-included-apr.  The build THEN failed, claiming it could not find 
the installed expat libraries, in an error exactly like what this 
gentleman had:

http://www.zulustips.com/2007/10/06/problems-compiling-apache-226-on-freebsd-62.html#more-54

And in fact, this apr committer had the same issue:

http://www.mail-archive.com/dev@apr.apache.org/msg18793.html

(search the page for "wtf")

Like them, I had an installed expat, and had it listed in ldconfig -r (I 
also note there's a libexpat in /usr/src but don't know what it's there 
for).

(I did not copy my errors because I thought I had found a solution, but 
it's the same error, I assure you).

After that,

I tried resorting to building apache with --with-expat=builtin

I then got THIS error:

/home/danm/httpd-2.2.6/srclib/apr/libtool --silent --mode=link gcc -g -O2 
-o htpasswd  htpasswd.lo   -lm 
/home/danm/httpd-2.2.6/srclib/pcre/libpcre.la 
/home/danm/httpd-2.2.6/srclib/apr-util/libaprutil-1.la 
/home/danm/httpd-2.2.6/srclib/apr-util/xml/expat/lib/libexpat.la 
/home/danm/httpd-2.2.6/srclib/apr/libapr-1.la -lcrypt -lpthread
/home/danm/httpd-2.2.6/srclib/apr-util/.libs/libaprutil-1.so: undefined 
reference to `libiconv_open'
/home/danm/httpd-2.2.6/srclib/apr-util/.libs/libaprutil-1.so: undefined 
reference to `libiconv_close'
/home/danm/httpd-2.2.6/srclib/apr-util/.libs/libaprutil-1.so: undefined 
reference to `libiconv'
*** Error code 1

Stop in /home5/danm/httpd-2.2.6/support.
*** Error code 1

Stop in /home5/danm/httpd-2.2.6/support.
*** Error code 1

Stop in /home5/danm/httpd-2.2.6.
prime#

So that's it.  I don't know how to fix this one -- and if it's upgrading 
my libiconv will fix it (but will require me to upgrade every program -- 
both binary and port) that depends on it, I'm willing, but pkg_info -f -g 
libiconv-1.9.2_2 reports no mismatched checksums (which implies to me that 
the libraries should have the functions that the header files are there).

If you need more info, please let me know.

I had to do the upgrade-everything dance a few weeks ago because something 
broke libintl -- I for a few moments blamed it that problem, but other 
people, on other production systems are having these issues.  I'm not 
about to do it again just to get a newer libiconv when I don't think 
that's the problem.

pkg_info -f -g apr-db42-1.2.7_1

[snip]

Mismatched Checksums:
pkg_info: /usr/local/build-1/apr_rules.mk doesn't exist
pkg_info: /usr/local/build-1/libtool doesn't exist
pkg_info: /usr/local/build-1/make_exports.awk doesn't exist
pkg_info: /usr/local/build-1/make_var_export.awk doesn't exist
pkg_info: /usr/local/build-1/mkdir.sh doesn't exist

If this is a bug in apache, please let me know and I'll file major bug 
reports there.  If on the other hand, the behavior documented by the ports 
installing files that report wrong locations, ldconfig reporting libraries 
that cannot be found, and the like, please let me know and I'll open (one 
or several) FreeBSD bugs.  It's clear from the searching I've been doing 
for several hours now that I'm not the only person having these issues.

Also, my uptime is nearly a year, which makes me a little old:

Uname: FreeBSD prime.gushi.org 6.2-PRERELEASE FreeBSD 6.2-PRERELEASE

But I'm loathe to fully cvsup, buildworld, and reboot on a production 
system unless we're sure it will do something (and I'm not at all sure it 
will).

If anyone has any ideas, please let me know.

Thanks,

Dan Mahoney
(With a Migraine)


--

--------Dan Mahoney--------
Techie,  Sysadmin,  WebGeek
Gushi on efnet/undernet IRC
ICQ: 13735144   AIM: LarpGM
Site:  http://www.gushi.org
---------------------------


Re: Build difficuties for apache 2.2.6

Posted by "Dan Mahoney, System Admin" <da...@prime.gushi.org>.
On Mon, 19 Nov 2007, Dan Mahoney, System Admin wrote:

Note:

I managed to get past the previously posted difficulties with some help 
from a very helpful person who suggested I do:

setenv CFLAGS "-L/usr/local/lib -I/usr/local/include"
setenv LDFLAGS "$CFLAGS"

However, my question goes to: Why does apache try to COMPILE against 
something it cannot link against.  Philip M. Gollucci suggested I post 
this question here:

My configure arguments were only this:

"./configure" \
"--enable-modules=most" \
"--enable-mods-shared=most" \
"--prefix=/usr/local/apache2-pierski" \
"--with-mpm=worker" \
"--with-included-apr" \
"--with-expat=builtin" \

To get the error I got (right below).  What confuses me is why I get it at 
COMPILE TIME, not at CONFIGURE TIME.  (I.e APR should have correctly set 
the CFLAGS/LDFLAGS), if it didn't bomb out because it couldn't find the 
things.

Anyone who can shed some light (or who needs access to a machine for 
testing) please let me know.

-Dan

> /home/danm/httpd-2.2.6/srclib/apr/libtool --silent --mode=link gcc -g -O2 -o 
> htpasswd  htpasswd.lo   -lm /home/danm/httpd-2.2.6/srclib/pcre/libpcre.la 
> /home/danm/httpd-2.2.6/srclib/apr-util/libaprutil-1.la 
> /home/danm/httpd-2.2.6/srclib/apr-util/xml/expat/lib/libexpat.la 
> /home/danm/httpd-2.2.6/srclib/apr/libapr-1.la -lcrypt -lpthread
> /home/danm/httpd-2.2.6/srclib/apr-util/.libs/libaprutil-1.so: undefined 
> reference to `libiconv_open'
> /home/danm/httpd-2.2.6/srclib/apr-util/.libs/libaprutil-1.so: undefined 
> reference to `libiconv_close'
> /home/danm/httpd-2.2.6/srclib/apr-util/.libs/libaprutil-1.so: undefined 
> reference to `libiconv'
> *** Error code 1
>
> Stop in /home5/danm/httpd-2.2.6/support.
> *** Error code 1
>
> Stop in /home5/danm/httpd-2.2.6/support.
> *** Error code 1
>
> Stop in /home5/danm/httpd-2.2.6.
> prime#

--

"You're a daddy.  I'm a mommy.  She's our baby.  Deal with it."

-Cali, 11/7/02, about 1:35 AM

--------Dan Mahoney--------
Techie,  Sysadmin,  WebGeek
Gushi on efnet/undernet IRC
ICQ: 13735144   AIM: LarpGM
Site:  http://www.gushi.org
---------------------------