Problem with libpng + Mozilla applications on FreeBSD 8.3
freebsd at edvax.de
Fri Oct 26 14:43:20 UTC 2012
On Fri, 26 Oct 2012 20:03:11 +0530, Manish Jain wrote:
> Hi All,
> I recently purchased a laptop (Intel Pentium dual core) and installed
> FreeBSD 8.3-i386 on it using the 'All' canned distribution. I then
> downloaded the latest ports tarball and started building them.
This ports snapshot is not "in sync" with the installed world
and possibly installed 3rd party programs (ports) anymore.
> Some of the ports required a newer version of the graphics/png port, so
> I did a deinstall and reinstall in graphics/png. This removed the
> previous binary libpng.so.6 and placed version libpng15.so.15 in its
> stead. Things went wrong here - the GNOME desktop started crashing with
> the panel not working and practically all desktop icons gone.
Exactly my experience with some libjpeg update some years ago. :-)
The rule usually is: If you update a port others depend on (read:
depend on a specific version), you also need to update those
ports. Mixing versions doesn't seem to be a good idea.
> So I
> guessed that the canned version of GNOME in the installation DVD had a
> dependency on libpng.so.6.
> I reinstalled FreeBSD 8.3, [...]
Why did you reinstall the OS? Things like Gnome or PNG libarary
> [...] and copied /usr/local/lib/libpng.so.6 to
> /usr/lib/libpng.so.6 before building the ports a second time.
You should not manually copy things. At some point, something will
crash, and the ports infrastructure cannot take care of it. It's
easier to use a port management tool (like portmaster) to deal
with installing and updating of ports.
> This time
> things went a lot more smoothly. GNOME works. But Mozilla applications
> like Firefox and Thunderbird present a peculiar problem - the buttons on
> the Tool bar/Menu bar do not have any image on them.
It seems that there is some "library collision". If you update
things, update _all_ of them, in order to avoid version trouble.
The best approach (in your case) would be: Install the OS, do
not install anything from ports yet. Get the ports tree. Update
it to the recent version. Now start installing stuff, and do it
from the _same_ ports tree.
Alternative: If you go with the programs installed from the media
(e. g. the DVD), use pkg_add to get binary installed applications.
In case you insist on compiling, get the ports tree of the _state
of your installation_ (i. e. the tarball from the DVD) and use
that. Do not update it. In this case, you can easily mix compiling
from source and installing via binary packages.
This alternative is not suggested now. :-)
> While this is not
> exactly a catastrophe, it is rankling to say the least. Maybe some
> gentleman has faced this problem and has sorted it out. If anyone can
> provide a hint on how to fix the problem, I would be grateful indeed.
Maybe an update of FF and TB would be sufficient, so it can link
to the present (or at least expected) libraries accordingly.
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...
More information about the freebsd-questions