Re: [Clipart] Announcing Inkscape 0.40 Release (fwd)
---------- Forwarded message ---------- Date: Tue, 30 Nov 2004 19:01:37 -0500 From: Jonadab the Unsightly One <jonadab@...581...> To: clipart@...330... Subject: Re: [Clipart] Announcing Inkscape 0.40 Release
Bryce Harrington <bryce@...260...> writes:
user's may encounter more trouble getting Inkscape installed on some platforms than in previous releases. To help those who run into this issue, we're also providing 'Static Binary' packages that include these new libraries inside the package, and thus, the static releases are very large.
Very large? 8 Megs hasn't been a large size for an application download in *years*. There are *plugins* nearly twice that large. (For example, I've got a copy of j2re-1_4_2_05-linux-i586.rpm sitting around in my downloads directory weighing in at 14MB, and nobody apologised for that being large.)
Honestly, I wish more applications would realease statically linked binaries like this.
<rant intensity="50%"> However, I still have to chase down a dependency: gtk2. I have gtk2, of course, but apparently it's not the latest and greatest version. So I downloaded that, but now I need other stuff...
error: Failed dependencies: libglib2.0 >= 2.4.0 is needed by libgtk+2.0_0-2.4.9-9mdk libpango1.0 >= 1.4.0 is needed by libgtk+2.0_0-2.4.9-9mdk libgtk+-x11-2.0_0 = 2.4.9-9mdk is needed by libgtk+2.0_0-2.4.9-9mdk
I need to do this anyway, since there's a new Gimp coming out that I'll want, but this underscores the single largest problem IMO in open-source today: excessive use of dynamic linking makes upgrades painful beyond the bounds of all reason.
I can understand the desire to link inkscape dynamically against GTK, because *lots* of stuff links against GTK, and it makes sense to install one copy (of each major version).
But I do NOT understand why GTK is linked dynamically against libglib and pango. Virtually nothing else besides GTK uses those libraries, so there's no good reason for the dynamic linking:
root@...582... ~/download :) # rpm -q --whatrequires libpango1.0 libgtk+2.0_0-2.2.4-2mdk root@...582... ~/download :) # rpm -q --whatrequires libglib2.0 libgtk+2.0_0-2.2.4-2mdk libgtop2.0_0-2.0.5-1mdk root@...582... ~/download :) # rpm -q --whatrequires libgtk+-x11-2.0_0 gtk+2.0-2.2.4-2mdk libgtk+2.0_0-devel-2.2.4-2mdk root@...582... ~/download :) #
Not only is GTK quite pointlessly dynamically linked against libglib and pango, but it *itself* is subdivided into two packages, for absolutely no good reason.
This is why I only have time to upgrade stuff at home, and at work I'm still using Gnome 1.4 -- at work, I can't justify the time to chase down a hillion jillion dependencies. I shouldn't have to do it at home either. Nobody should. Hard drive sizes being what they are, it no longer makes sense to save a couple of measley megabytes by inflicting superfluous pain on the user. Inkscape is an application I use with some frequency: as such, it's welcome to a few megabytes of drive space. </rant>
One can only imagine the trouble I'd have put myself through if I'd downloaded the non-statically-linked version of Inkscape. <<shudder>>
The take-home message is this: Static linking is GOOD, and the world needs more of it.
On Tue, 2004-11-30 at 16:37 -0800, Bryce Harrington wrote:
---------- Forwarded message ---------- Date: Tue, 30 Nov 2004 19:01:37 -0500 From: Jonadab the Unsightly One <jonadab@...581...> To: clipart@...330... Subject: Re: [Clipart] Announcing Inkscape 0.40 Release
Bryce Harrington <bryce@...260...> writes:
user's may encounter more trouble getting Inkscape installed on some platforms than in previous releases. To help those who run into this issue, we're also providing 'Static Binary' packages that include these new libraries inside the package, and thus, the static releases are very large.
Yeah, that is my mistake in keeping that in the PR blurb. I just changed it. I should of had more people check it first. My bad...
Jon
Very large? 8 Megs hasn't been a large size for an application download in *years*. There are *plugins* nearly twice that large. (For example, I've got a copy of j2re-1_4_2_05-linux-i586.rpm sitting around in my downloads directory weighing in at 14MB, and nobody apologised for that being large.)
Honestly, I wish more applications would realease statically linked binaries like this.
<rant intensity="50%"> However, I still have to chase down a dependency: gtk2. I have gtk2, of course, but apparently it's not the latest and greatest version. So I downloaded that, but now I need other stuff...
error: Failed dependencies: libglib2.0 >= 2.4.0 is needed by libgtk+2.0_0-2.4.9-9mdk libpango1.0 >= 1.4.0 is needed by libgtk+2.0_0-2.4.9-9mdk libgtk+-x11-2.0_0 = 2.4.9-9mdk is needed by libgtk+2.0_0-2.4.9-9mdk
I need to do this anyway, since there's a new Gimp coming out that I'll want, but this underscores the single largest problem IMO in open-source today: excessive use of dynamic linking makes upgrades painful beyond the bounds of all reason.
I can understand the desire to link inkscape dynamically against GTK, because *lots* of stuff links against GTK, and it makes sense to install one copy (of each major version).
But I do NOT understand why GTK is linked dynamically against libglib and pango. Virtually nothing else besides GTK uses those libraries, so there's no good reason for the dynamic linking:
root@...582... ~/download :) # rpm -q --whatrequires libpango1.0 libgtk+2.0_0-2.2.4-2mdk root@...582... ~/download :) # rpm -q --whatrequires libglib2.0 libgtk+2.0_0-2.2.4-2mdk libgtop2.0_0-2.0.5-1mdk root@...582... ~/download :) # rpm -q --whatrequires libgtk+-x11-2.0_0 gtk+2.0-2.2.4-2mdk libgtk+2.0_0-devel-2.2.4-2mdk root@...582... ~/download :) #
Not only is GTK quite pointlessly dynamically linked against libglib and pango, but it *itself* is subdivided into two packages, for absolutely no good reason.
This is why I only have time to upgrade stuff at home, and at work I'm still using Gnome 1.4 -- at work, I can't justify the time to chase down a hillion jillion dependencies. I shouldn't have to do it at home either. Nobody should. Hard drive sizes being what they are, it no longer makes sense to save a couple of measley megabytes by inflicting superfluous pain on the user. Inkscape is an application I use with some frequency: as such, it's welcome to a few megabytes of drive space.
</rant>
One can only imagine the trouble I'd have put myself through if I'd downloaded the non-statically-linked version of Inkscape. <<shudder>>
The take-home message is this: Static linking is GOOD, and the world needs more of it.
Point taken...never cross Bryce ;)
Actually Bryce, I removed this from my final version...I think you sent out the version of my edit previous to my final...ugh...its ok. I dragged my feet on the PR too much ;)
Jon
On Tue, 2004-11-30 at 16:37 -0800, Bryce Harrington wrote:
---------- Forwarded message ---------- Date: Tue, 30 Nov 2004 19:01:37 -0500 From: Jonadab the Unsightly One <jonadab@...581...> To: clipart@...330... Subject: Re: [Clipart] Announcing Inkscape 0.40 Release
Bryce Harrington <bryce@...260...> writes:
user's may encounter more trouble getting Inkscape installed on some platforms than in previous releases. To help those who run into this issue, we're also providing 'Static Binary' packages that include these new libraries inside the package, and thus, the static releases are very large.
Very large? 8 Megs hasn't been a large size for an application download in *years*. There are *plugins* nearly twice that large. (For example, I've got a copy of j2re-1_4_2_05-linux-i586.rpm sitting around in my downloads directory weighing in at 14MB, and nobody apologised for that being large.)
Honestly, I wish more applications would realease statically linked binaries like this.
<rant intensity="50%"> However, I still have to chase down a dependency: gtk2. I have gtk2, of course, but apparently it's not the latest and greatest version. So I downloaded that, but now I need other stuff...
error: Failed dependencies: libglib2.0 >= 2.4.0 is needed by libgtk+2.0_0-2.4.9-9mdk libpango1.0 >= 1.4.0 is needed by libgtk+2.0_0-2.4.9-9mdk libgtk+-x11-2.0_0 = 2.4.9-9mdk is needed by libgtk+2.0_0-2.4.9-9mdk
I need to do this anyway, since there's a new Gimp coming out that I'll want, but this underscores the single largest problem IMO in open-source today: excessive use of dynamic linking makes upgrades painful beyond the bounds of all reason.
I can understand the desire to link inkscape dynamically against GTK, because *lots* of stuff links against GTK, and it makes sense to install one copy (of each major version).
But I do NOT understand why GTK is linked dynamically against libglib and pango. Virtually nothing else besides GTK uses those libraries, so there's no good reason for the dynamic linking:
root@...582... ~/download :) # rpm -q --whatrequires libpango1.0 libgtk+2.0_0-2.2.4-2mdk root@...582... ~/download :) # rpm -q --whatrequires libglib2.0 libgtk+2.0_0-2.2.4-2mdk libgtop2.0_0-2.0.5-1mdk root@...582... ~/download :) # rpm -q --whatrequires libgtk+-x11-2.0_0 gtk+2.0-2.2.4-2mdk libgtk+2.0_0-devel-2.2.4-2mdk root@...582... ~/download :) #
Not only is GTK quite pointlessly dynamically linked against libglib and pango, but it *itself* is subdivided into two packages, for absolutely no good reason.
This is why I only have time to upgrade stuff at home, and at work I'm still using Gnome 1.4 -- at work, I can't justify the time to chase down a hillion jillion dependencies. I shouldn't have to do it at home either. Nobody should. Hard drive sizes being what they are, it no longer makes sense to save a couple of measley megabytes by inflicting superfluous pain on the user. Inkscape is an application I use with some frequency: as such, it's welcome to a few megabytes of drive space.
</rant>
One can only imagine the trouble I'd have put myself through if I'd downloaded the non-statically-linked version of Inkscape. <<shudder>>
The take-home message is this: Static linking is GOOD, and the world needs more of it.
It's all good. We got the message out. I'm actually hoping to get more from the articles that are in the hopper and will hopefully be out within the week.
Bryce
On Tue, 30 Nov 2004, Jon Phillips wrote:
Actually Bryce, I removed this from my final version...I think you sent out the version of my edit previous to my final...ugh...its ok. I dragged my feet on the PR too much ;)
Jon
On Tue, 2004-11-30 at 16:37 -0800, Bryce Harrington wrote:
---------- Forwarded message ---------- Date: Tue, 30 Nov 2004 19:01:37 -0500 From: Jonadab the Unsightly One <jonadab@...581...> To: clipart@...330... Subject: Re: [Clipart] Announcing Inkscape 0.40 Release
Bryce Harrington <bryce@...260...> writes:
user's may encounter more trouble getting Inkscape installed on some platforms than in previous releases. To help those who run into this issue, we're also providing 'Static Binary' packages that include these new libraries inside the package, and thus, the static releases are very large.
Very large? 8 Megs hasn't been a large size for an application download in *years*. There are *plugins* nearly twice that large. (For example, I've got a copy of j2re-1_4_2_05-linux-i586.rpm sitting around in my downloads directory weighing in at 14MB, and nobody apologised for that being large.)
Honestly, I wish more applications would realease statically linked binaries like this.
<rant intensity="50%"> However, I still have to chase down a dependency: gtk2. I have gtk2, of course, but apparently it's not the latest and greatest version. So I downloaded that, but now I need other stuff...
error: Failed dependencies: libglib2.0 >= 2.4.0 is needed by libgtk+2.0_0-2.4.9-9mdk libpango1.0 >= 1.4.0 is needed by libgtk+2.0_0-2.4.9-9mdk libgtk+-x11-2.0_0 = 2.4.9-9mdk is needed by libgtk+2.0_0-2.4.9-9mdk
I need to do this anyway, since there's a new Gimp coming out that I'll want, but this underscores the single largest problem IMO in open-source today: excessive use of dynamic linking makes upgrades painful beyond the bounds of all reason.
I can understand the desire to link inkscape dynamically against GTK, because *lots* of stuff links against GTK, and it makes sense to install one copy (of each major version).
But I do NOT understand why GTK is linked dynamically against libglib and pango. Virtually nothing else besides GTK uses those libraries, so there's no good reason for the dynamic linking:
root@...582... ~/download :) # rpm -q --whatrequires libpango1.0 libgtk+2.0_0-2.2.4-2mdk root@...582... ~/download :) # rpm -q --whatrequires libglib2.0 libgtk+2.0_0-2.2.4-2mdk libgtop2.0_0-2.0.5-1mdk root@...582... ~/download :) # rpm -q --whatrequires libgtk+-x11-2.0_0 gtk+2.0-2.2.4-2mdk libgtk+2.0_0-devel-2.2.4-2mdk root@...582... ~/download :) #
Not only is GTK quite pointlessly dynamically linked against libglib and pango, but it *itself* is subdivided into two packages, for absolutely no good reason.
This is why I only have time to upgrade stuff at home, and at work I'm still using Gnome 1.4 -- at work, I can't justify the time to chase down a hillion jillion dependencies. I shouldn't have to do it at home either. Nobody should. Hard drive sizes being what they are, it no longer makes sense to save a couple of measley megabytes by inflicting superfluous pain on the user. Inkscape is an application I use with some frequency: as such, it's welcome to a few megabytes of drive space.
</rant>
One can only imagine the trouble I'd have put myself through if I'd downloaded the non-statically-linked version of Inkscape. <<shudder>>
The take-home message is this: Static linking is GOOD, and the world needs more of it.
On Tue, Nov 30, 2004 at 04:37:57PM -0800, Bryce Harrington wrote:
---------- Forwarded message ----------
<rant intensity="50%"> However, I still have to chase down a dependency: gtk2. I have gtk2, of course, but apparently it's not the latest and greatest version. So I downloaded that, but now I need other stuff...
error: Failed dependencies: libglib2.0 >= 2.4.0 is needed by libgtk+2.0_0-2.4.9-9mdk libpango1.0 >= 1.4.0 is needed by libgtk+2.0_0-2.4.9-9mdk libgtk+-x11-2.0_0 = 2.4.9-9mdk is needed by libgtk+2.0_0-2.4.9-9mdk [snip]
Not only is GTK quite pointlessly dynamically linked against libglib and pango, but it *itself* is subdivided into two packages, for absolutely no good reason.
I think the RPM deps for pango are not detected correctly. I did the final bits of work on making the static inkscape package, and originally I wanted to do GTK statically, but it turned out to be very difficult. Anyway, as an explaination for you as to why GTK wasn't linked dynamically, here's my email. :) If you have any solutions, I'm all ears, since I'd like to see Inkscape running on my old redhat 7.2 box. :)
It seems Pango (which uses all the Glib data types, which translates into the libs libgobject, libgmodule, etc) cannot operate when compiled statically. Now, I could have easily missed something, but I had already spent about 20 hours endlessly recompiling things as I discovered more deps. I could not get pango operational unless it was dynamic.
This was also somewhat true for GTK, which uses modules for doing theme loading, image loading, etc. Again, I could have easily missed something, but I was sick to death of trying to make it work. :)
I had one version of the static build that had GTK static for everything but pango (which refused to link against the static GTK when I built it dynamically... again, I was sick of fighting). So I had a half-static, half-not inkscape binary. It was amusing since pango worked fine, but due to the lack of modules, all the themes and fonts for GTK's window displays on inkscape were toast. Oh well. To make it work, I relaxed the requirement, and left GTK 2.4 dynamic.
I detailed the process here: http://www.inkscape.org/cgi-bin/wiki.pl?CompilingStatic
If anyone can get pango/gtk static, I would love to get it working.
participants (4)
-
Bryce Harrington
-
bulia byak
-
Jon Phillips
-
Kees Cook