Live data from Hacker News

Linus Torvalds: Programs exist for their users

lkml.org

101–110 of 136 posts

Re: Linus Torvalds: Programs exist for their users

#101

In my experience binary compatibility on linux is a train wreck. Ever tried to get a binary compiled 5 years ago to run on a fresh install of linux? Good luck. If you still have the specific version of every shared library that it loaded you might be able to get it to work. This isn't the fault of the kernel team though. It is probably to be expected on platforms in which distributing source code is the default optio…

If we used static compilation for everything, this wouldn't be a problem. Our problem would then be higher memory consumption, but I can fix that for $50--at least until the next Ubuntu release comes out.

Speaking of that, I wonder if there's some point at which dynamic libraries don't really help you that much. These days, even shared libraries don't seem to stop a GNOME desktop running a browser from sucking down a gig of memory; would it really kill them to have a couple more megs of static library in each program? With copy-on-write, I think things like Chrome which spawn many children would come out pretty well.

Re: Linus Torvalds: Programs exist for their users

#102
post #48

It's great that Linus is committed to supporting old binaries, too bad all that effort is in vain because of the glibc disaster. Linux can run statically compiled binaries from 1993, but not the Firefox binaries from 2006.

wouldn't it be possible to still run them with some LD_xxx magic where the c++ shared libs are put in some folder and loaded from there? (It's really userspace problem).

Re: Linus Torvalds: Programs exist for their users

#103
post #64
post #58

Earlier quoted context omitted.

I would add politeness. Not sure about Linus, though...

He's nicer than Jobs, at least.

Granted, Jobs was not always a nice person behind closed doors. However, at least during his Apple 2.0 days, he did NOT trash the people working for him in public the way Linus habitually does.

Another difference is that a lot of people working for Jobs (again, at least during the Apple 2.0 days) made f* you money for their efforts. There are engineers making a living working on Linux, but not on that scale, I think.

Re: Linus Torvalds: Programs exist for their users

#104
post #101

In my experience binary compatibility on linux is a train wreck. Ever tried to get a binary compiled 5 years ago to run on a fresh install of linux? Good luck. If you still have the specific version of every shared library that it loaded you might be able to get it to work. This isn't the fault of the kernel team though. It is probably to be expected on platforms in which distributing source code is the default optio…

If we used static compilation for everything, this wouldn't be a problem. Our problem would then be higher memory consumption, but I can fix that for $50--at least until the next Ubuntu release comes out. Speaking of that, I wonder if there's some point at which dynamic libraries don't really help you that much. These days, even shared libraries don't seem to stop a GNOME desktop running a browser from sucking down a…

Using shared libraries also decreases application startup time, because applications don't need to read as much code from disk.

Even using an SSD I suspect the difference would be noticable for most applications.

Re: Linus Torvalds: Programs exist for their users

#105
post #66

In my experience binary compatibility on linux is a train wreck. Ever tried to get a binary compiled 5 years ago to run on a fresh install of linux? Good luck. If you still have the specific version of every shared library that it loaded you might be able to get it to work. This isn't the fault of the kernel team though. It is probably to be expected on platforms in which distributing source code is the default optio…

You're fumbling over the term "Linux". What you're describing is platform library incompatibility. What Linus is talking about is the kernel ABI. Not the same thing. The latter is a subset of the former, obviously, but Linus can't fix the fact that library authors don't care as much about the problem. The kernel is doing its job. Userspace, not so much. Though it's not nearly as bad as you think. In general, any desk…

Even if you were to statically compile a software build from 5 years ago, it may require newer kernel features such as inotify (instead of dnotify). At some point of time the application authors (correctly) made a decision to throw out the old and go with the new. This is not a kernel issue (because old systems such as dnotify are still supported). But from a user perspective, it looks like the kernel is to blame, even if this assumption is incorrect.

Re: Linus Torvalds: Programs exist for their users

#106
post #19

In my experience binary compatibility on linux is a train wreck. Ever tried to get a binary compiled 5 years ago to run on a fresh install of linux? Good luck. If you still have the specific version of every shared library that it loaded you might be able to get it to work. This isn't the fault of the kernel team though. It is probably to be expected on platforms in which distributing source code is the default optio…

If you want to be sure it'll work, you compile it statically, and waste a little bit of disk space and memory.

Trading security / bug fix updates in the process

Re: Linus Torvalds: Programs exist for their users

#107
post #101

In my experience binary compatibility on linux is a train wreck. Ever tried to get a binary compiled 5 years ago to run on a fresh install of linux? Good luck. If you still have the specific version of every shared library that it loaded you might be able to get it to work. This isn't the fault of the kernel team though. It is probably to be expected on platforms in which distributing source code is the default optio…

If we used static compilation for everything, this wouldn't be a problem. Our problem would then be higher memory consumption, but I can fix that for $50--at least until the next Ubuntu release comes out. Speaking of that, I wonder if there's some point at which dynamic libraries don't really help you that much. These days, even shared libraries don't seem to stop a GNOME desktop running a browser from sucking down a…

One advantage to shared libs/dlls is that a security fix will be applied to all applications that depend on that. So if everyone statically links against insecure libA.a then all apps that depend on it need to ship a patch. Where as if libA is shipped as a shared library then one update needs to be applied. That's one advantage but maybe not the best.

Re: Linus Torvalds: Programs exist for their users

#108
post #82
post #58

Earlier quoted context omitted.

I would add politeness. Not sure about Linus, though...

Linus has to his credit the fact that he's less of an a-hole than, say, Theo de Raadt. Though I'm not so sure I want Nice Guys(tm) writing my software...

But, comparing anyone to de Raadt is easy :D
Post reply on HN