Build Frustrations

Brent Jones brent.jones at otago.ac.nz
Mon Nov 19 18:35:46 PST 2007


This may help:

http://lists.freebsd.org/pipermail/freebsd-stable/2004-December/010425.h
tml

Cheers,
Brent
 

-----Original Message-----
From: owner-freebsd-questions at freebsd.org
[mailto:owner-freebsd-questions at freebsd.org] On Behalf Of Dan Mahoney,
System Admin
Sent: Tuesday, 20 November 2007 1:20 p.m.
To: questions at freebsd.org
Subject: Build Frustrations

All,

I'm of the realization that FreeBSD is a volunteer project, but there's
a 
recent issue I've hit, and I've contacted nearly EVERYONE I can think of

about it to try and fix, and the response I've gotten has been a
deafening 
silence.

I'm having trouble building apache2.2.6, it relates I feel to an 
inconsitent libexpat library under FreeBSD, COMBINED with a badly made
and 
inconsistent apr port, and some libiconv incompatibilities.  I've
emailed 
ports maintainers, APR developers, the general apache mailing list, and 
gotten nothing.

I'm posting this to the straight-off questions list because I feel my 
other attempts have failed.  Can someone "sanity check" me?  I'm well 
aware of how to "ask intelligent questions", to document what I have and

have not done, of explaining WHY I have or have not done those things.

I'm going to send it here, in the hopes maybe someone else has
encountered 
this or might spot something I'm missing.  If ANYONE can shed some light

here, I'd appreciate it and am willing to compensate in some small way,
if 
I can.

Here's what I sent to the maintainers of the above two ports:

Subject: apr versus apr-db42, as well as some other issues:

Hello,

First and foremost: I assume you're both reasonably busy professionals. 
That said, I believe there's either a bug in the core operating system 
here, or a bug in the way some of the critical ports are built, and I 
cannot figure it out alone.  It is enough of a problem that it has 
confused at least one apache committer.  That said, if you'd like to be 
compensated in some small way for your time, please point me to your 
amazon wishlists, paypal accounts, et cetera, and I'll try to do the 
right thing.

I am mailing you because you are the maintainers of the apache-2.2.6 and

apr ports.  If there are other people I should be mailing, please let me

know.

This is a post about building apache2.2 from scratch, not from ports -- 
however it raises several issues with port-installed tools that lead me
to 
believe they may still be at fault.  I apologize in advance for the
length 
of this post, but having all the data is sometimes important.  I believe

it's reproducable but I don't have the spare machines to try on.

First, the basics:

1) Is it possible to get some documentation in either the short or long 
description as to what the difference between apr and apr-db42 is?

2) Also, is it at all possible to get some kind of documentation for the

apr-svn port (if it still exists).

3) My big problem:

(I'm going to post everything from here down to the apache-users mailing

list, as well).

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-fre
ebsd-62.html#more-54

And in fact, this apache developer 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)

--

<Zaren> Christ almighty...  my EYES!  They're melting!

-Zaren, Efnet #macintosh, in response to:

www.geocities.com/CollegePark/Classroom/1944
The WEBSITE DESIGN class that gave my fiancee a D.

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

_______________________________________________
freebsd-questions at freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to
"freebsd-questions-unsubscribe at freebsd.org"


More information about the freebsd-questions mailing list