Subject: dependencies wrong for expat and firefox-gtk2
To: None <tech-pkg@netbsd.org>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-pkg
Date: 04/08/2004 01:26:16
I have:
firefox-gtk2-0.8nb2.tbz expat-1.95.7.tbz XFree86-libs-4.4.0.tbz
ldd of firefox-gtk2 shows
libexpat.so.4 => not found
The expat package provides /usr/lib/libexpat.so.5.0.
I had built the firefox-gtk2 package before I had built expat package.
And on another machine these packages installed fine.
firefox-gtk2 doesn't appear to have any dependency on the expat package.
But looking closer with ldd of the libraries used by firefox-gtk, I see
all of these also want the libexpat.so.4 (which doesn't exist).
/usr/lib/libgtk-x11-2.0.so.400
/usr/lib/libgdk-x11-2.0.so.400
/usr/lib/libpangoxft-1.0.so.399
/usr/lib/libXft.so.2
/usr/lib/libfontconfig.so.1
/usr/lib/libpangoft2-1.0.so.399
Maybe this is just a one-time isolated problem, but it seems like whatever
wants libexpat should have more fine-tuned, not-open-ended dependency.
I had mentioned before about having dependencies also based on filenames,
and I believe that is probably wrong.
But having a precise DEPENDS line is important.
It appears that my fontconfig-2.2.1nb3.tbz has a requirement of:
expat>=1.95.4
And my XFree86-libs-4.4.0.tbz requires expat>=1.95.4 also.
But my expat-1.95.7.tbz is wrong (because library number changed).
Now I see why: expat was updated to version 1.95.7 on March 2.
But buildlink2 was last modified in October with the comment:
expat >= 1.95.4 provide libexpat.4 which other packages need, so bump
BUILDLINK_DEPENDS accordingly.
fixes build problems observed by a couple of users on tech-pkg,
well as fixing PR pkg/21325.
And buildlink3.mk has never had depends updated since its existence.
Jeremy C. Reed
http://bsd.reedmedia.net/