Upgrading gettext breaks many ports
I did a "port upgrade installed" this morning, which upgraded gettext. gettext used to provide /opt/local/lib/libintl.3.dylib, and now provides /opt/local/lib/libintl.8.dylib. This broke a lot of ports, including subversion, subversion-perlbindings, gawk, gnupg, wget, and bitlbee: dyld: Library not loaded: /opt/local/lib/libintl.3.dylib Referenced from: /opt/local/bin/wget Reason: image not found Trace/BPT trap --dave -- David Glasser | glasser@mit.edu | http://www.davidglasser.net/
On 9/25/06, David Glasser <glasser@mit.edu> wrote:
I did a "port upgrade installed" this morning, which upgraded gettext. gettext used to provide /opt/local/lib/libintl.3.dylib, and now provides /opt/local/lib/libintl.8.dylib. This broke a lot of ports, including subversion, subversion-perlbindings, gawk, gnupg, wget, and bitlbee:
As a note -- I've gotten offers of how I can recover on IRC and in personal responses to my mail. That's great, but that doesn't mean that there isn't an issue here which is going to affect a lot of users. --dave -- David Glasser | glasser@mit.edu | http://www.davidglasser.net/
On Sep 25, 2006, at 1:57 PM, David Glasser wrote:
As a note -- I've gotten offers of how I can recover on IRC and in personal responses to my mail. That's great, but that doesn't mean that there isn't an issue here which is going to affect a lot of users.
I think David is onto something here: is this a feature of the new lists? shouldn't replies go to the list by default? -- Paul Beard contact info: www.paulbeard.org/paulbeard.vcf pictures: http://www.flickr.com/photos/pdb206/ Are you trying to win an argument or solve a problem?
On 9/25/06, Paul Beard <paulbeard@gmail.com> wrote:
On Sep 25, 2006, at 1:57 PM, David Glasser wrote:
As a note -- I've gotten offers of how I can recover on IRC and in personal responses to my mail. That's great, but that doesn't mean that there isn't an issue here which is going to affect a lot of users.
I think David is onto something here: is this a feature of the new lists? shouldn't replies go to the list by default?
Oops, I think I was unclear: my point wasn't "people should say how to work around this on the list instead of in person", it was "we really need to come up with something better than a manual workaround that everybody has to research for themselves". Maybe portfiles can contain a flag that says "rebuild my dependents when you install me"? --dave -- David Glasser | glasser@mit.edu | http://www.davidglasser.net/
Yes, it broke my php4 too ... but it's working again after a force rebuild. Mark -- At 15:45 -0400 25/9/06, David Glasser wrote:
I did a "port upgrade installed" this morning, which upgraded gettext. gettext used to provide /opt/local/lib/libintl.3.dylib, and now provides /opt/local/lib/libintl.8.dylib. This broke a lot of ports, including subversion, subversion-perlbindings, gawk, gnupg, wget, and bitlbee:
dyld: Library not loaded: /opt/local/lib/libintl.3.dylib Referenced from: /opt/local/bin/wget Reason: image not found Trace/BPT trap
--dave
-- David Glasser | glasser@mit.edu | http://www.davidglasser.net/ _______________________________________________ macports-users mailing list macports-users@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo/macports-users
I had this problem yesterday as well. Gettext is a nasty one to have this problem because a lot of ports depend on it. When I tried rebuilding some more complicated dependent ports, I was getting failures in tools such as bison that are run during the configure process. I agree with David Glasser, there is probably a better way to handle this situation. To start with, what about adding a 'dry-run' mode to the tool, so it would use the same dependency-following algorithms based on your option selections, and return just which ports would be affected by your action? Frank On Sep 25, 2006, at 5:18 PM, Mark Hattam wrote:
Yes, it broke my php4 too ... but it's working again after a force rebuild.
Mark
--
At 15:45 -0400 25/9/06, David Glasser wrote:
I did a "port upgrade installed" this morning, which upgraded gettext. gettext used to provide /opt/local/lib/libintl.3.dylib, and now provides /opt/local/lib/libintl.8.dylib. This broke a lot of ports, including subversion, subversion-perlbindings, gawk, gnupg, wget, and bitlbee:
dyld: Library not loaded: /opt/local/lib/libintl.3.dylib Referenced from: /opt/local/bin/wget Reason: image not found Trace/BPT trap
--dave
-- David Glasser | glasser@mit.edu | http://www.davidglasser.net/ _______________________________________________ macports-users mailing list macports-users@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo/macports-users
_______________________________________________ macports-users mailing list macports-users@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo/macports-users
On 2006-09-25 17:06:02 -0400, David Glasser wrote:
Maybe portfiles can contain a flag that says "rebuild my dependents when you install me"?
This may be nice in some cases, but won't solve the real problem, which is that a library should never be removed by an upgrade (replaced by a compatible version, with the same name OK, but not removed just because there exists a different, incompatible version). Indeed, for various reasons (e.g. bugs), rebuilding some ports may fail. Ditto for other programs compiled/installed directly by the user (i.e. not via MacPorts). Some files could be flagged to prevent their removal (while still allowing their replacement), except when the removal is explicitly requested by the user. -- Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)
On 2006-09-29 23:19:42 +0200, Vincent Lefevre wrote:
On 2006-09-25 17:06:02 -0400, David Glasser wrote:
Maybe portfiles can contain a flag that says "rebuild my dependents when you install me"?
This may be nice in some cases, but won't solve the real problem, which is that a library should never be removed by an upgrade (replaced by a compatible version, with the same name OK, but not removed just because there exists a different, incompatible version). Indeed, for various reasons (e.g. bugs), rebuilding some ports may fail. Ditto for other programs compiled/installed directly by the user (i.e. not via MacPorts).
In particular, this breaks when there are circular dependencies. For instance, to rebuild gettext, one gets errors when the "configure" script runs bison and "make" runs install-info, because then need gettext. I don't know if these errors are harmful, though. -- Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)
On Sep 25, 2006, at 16:02, Paul Beard wrote:
On Sep 25, 2006, at 1:57 PM, David Glasser wrote:
As a note -- I've gotten offers of how I can recover on IRC and in personal responses to my mail. That's great, but that doesn't mean that there isn't an issue here which is going to affect a lot of users.
I think David is onto something here: is this a feature of the new lists? shouldn't replies go to the list by default?
I would prefer that the behavior not change; I subscribe to these arguments: http://www.unicom.com/pw/reply-to-harmful.html There are of course differing viewpoints: http://www.metasystema.net/essays/reply-to.mhtml
Vincent Lefevre <vincent-opdarw@vinc17.org> (VL) wrote:
VL> On 2006-09-25 17:06:02 -0400, David Glasser wrote:
Maybe portfiles can contain a flag that says "rebuild my dependents when you install me"?
VL> This may be nice in some cases, but won't solve the real problem, VL> which is that a library should never be removed by an upgrade VL> (replaced by a compatible version, with the same name OK, but VL> not removed just because there exists a different, incompatible VL> version). Indeed, for various reasons (e.g. bugs), rebuilding VL> some ports may fail. Ditto for other programs compiled/installed VL> directly by the user (i.e. not via MacPorts).
VL> Some files could be flagged to prevent their removal (while still VL> allowing their replacement), except when the removal is explicitly VL> requested by the user.
I think the dependency systems should be much more sophisticated. Preferably with automatic garbage collection to prevent libraries from disappearing when they are still needed. I think MacPorts would be a good candidate for NiX: <http://www.cs.uu.nl/wiki/Trace/Nix> and if people are interested I can see if we can start a research project to develop a NiX version of MacPorts. -- Piet van Oostrum <piet@cs.uu.nl> URL: http://www.cs.uu.nl/~piet [PGP 8DAE142BE17999C4] Private email: piet@vanoostrum.org
On Oct 2, 2006, at 7:02 AM, Piet van Oostrum wrote:
Vincent Lefevre <vincent-opdarw@vinc17.org> (VL) wrote:
VL> On 2006-09-25 17:06:02 -0400, David Glasser wrote:
Maybe portfiles can contain a flag that says "rebuild my dependents when you install me"?
VL> This may be nice in some cases, but won't solve the real problem, VL> which is that a library should never be removed by an upgrade VL> (replaced by a compatible version, with the same name OK, but VL> not removed just because there exists a different, incompatible VL> version). Indeed, for various reasons (e.g. bugs), rebuilding VL> some ports may fail. Ditto for other programs compiled/installed VL> directly by the user (i.e. not via MacPorts).
VL> Some files could be flagged to prevent their removal (while still VL> allowing their replacement), except when the removal is explicitly VL> requested by the user.
I think the dependency systems should be much more sophisticated. Preferably with automatic garbage collection to prevent libraries from disappearing when they are still needed. I think MacPorts would be a good candidate for NiX: <http://www.cs.uu.nl/wiki/Trace/Nix> and if people are interested I can see if we can start a research project to develop a NiX version of MacPorts.
I agree that the dependency system should be more sophisticated. I'd like to help with this issue because I've spent a lot of time recently trying to sort out these library dependency issues on my macports systems. It's difficult to tell anything about the stability of the NiX project from their webpage. Their subversion repository does have some recent activity, but it is all one developer. Do you have a good idea of the stability and activity on the project? I think it would be useful to gain a good understanding of the implementation and limitations of the current package management system, and also to objectively compare other package management systems we could use. The core macports folks would have to weigh in on these issues since they'd be the ones merging in any changes. There's a mention in /opt/local/etc/ports.conf about an sqlite db format; it might be worthwhile to find out more about the status of that effort. -- Frank McPherson
Frank McPherson wrote:
On Oct 2, 2006, at 7:02 AM, Piet van Oostrum wrote:
I think the dependency systems should be much more sophisticated. Preferably with automatic garbage collection to prevent libraries from disappearing when they are still needed. I think MacPorts would be a good candidate for NiX: <http://www.cs.uu.nl/wiki/Trace/Nix> and if people are interested I can see if we can start a research project to develop a NiX version of MacPorts.
I agree that the dependency system should be more sophisticated. I'd like to help with this issue because I've spent a lot of time recently trying to sort out these library dependency issues on my macports systems.
It's difficult to tell anything about the stability of the NiX project from their webpage. Their subversion repository does have some recent activity, but it is all one developer. Do you have a good idea of the stability and activity on the project?
I think it would be useful to gain a good understanding of the implementation and limitations of the current package management system, and also to objectively compare other package management systems we could use. The core macports folks would have to weigh in on these issues since they'd be the ones merging in any changes. There's a mention in /opt/local/etc/ports.conf about an sqlite db format; it might be worthwhile to find out more about the status of that effort.
How about looking at the ports system that Gentoo uses? (http:www.gentoo.org) I've been using that system for several years and never had the kinds of problems with dependencies that resulted in this thread. We're moving most of our Linux systems to Gentoo, in part because of the ease of use. It's written in Python and seems to be quite portable. There was an effort at Gentoo to make it completely portable. I'm not sure how that effort went. Cheers, Bob -- Bob Amen O'Reilly Media, Inc. http://www.ora.com/ http://www.oreilly.com/
participants (8)
-
Bob Amen
-
David Glasser
-
Frank McPherson
-
Mark Hattam
-
Paul Beard
-
Piet van Oostrum
-
Ryan Schmidt
-
Vincent Lefevre