Bug 136179

Summary: msgfmt from devel/gettext port should have runtime dependency on glib
Product: Ports & Packages Reporter: graham
Component: Individual Port(s)Assignee: Ade Lovett <ade>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   

Description graham 2009-06-30 05:30:01 UTC
On a clean installation of FreeBSD 7.2-Stable, attempting to install various ports that use the msgfmt program from port devel/gettext-0.17_1 (e.g. databases/postgresql83-server) will fail. This is because msgfmt uses libglib-2.0.so.0 which comes from port devel/glib20. However glib20 is not a dependency of gettext.

Fix: 

Make devel/gettext depend on devel/glib20
How-To-Repeat: - install FreeBSD 7.2 including the ports collection
- cd /usr/ports/databases/postgresql83-server
- make install

The make will fail with:
  Shared object "libglib-2.0.so.0" not found
Comment 1 Mark Linimon freebsd_committer freebsd_triage 2009-06-30 07:22:06 UTC
Responsible Changed
From-To: freebsd-ports-bugs->ade

aDe is still listed as maintainer.
Comment 2 Ade Lovett freebsd_committer freebsd_triage 2009-06-30 10:57:54 UTC
State Changed
From-To: open->closed

If this were really the case, then postgresql would not be buildable on 
the clusters.  Given that packages exist, it's not the case. 

In addition, since devel/glib20 has USE_GETTEXT=YES, the 'fix' here would 
create a circular dependency that would kill pretty much half of the ports 
tree.
Comment 3 Graham.Menhennitt 2009-07-01 04:06:25 UTC
Script started on Wed Jul  1 12:57:47 2009
% cd /usr/local/lib
% msgfmt
msgfmt: no input file given
Try `msgfmt --help' for more information.
% mv libglib-2.0.so.0 z
% msgfmt
/libexec/ld-elf.so.1: Shared object "libglib-2.0.so.0" not found, required by "msgfmt"
% mv z libglib-2.0.so.0
% msgfmt
msgfmt: no input file given
Try `msgfmt --help' for more information.
% exit
Script done on Wed Jul  1 12:58:29 2009