John H. Robinson, IV wrote:
Andrew Lentvorski wrote:
Today I got an error trying to compile Amarok. No big deal, right. Just fix the libraries and move on.

You listed C in the subject, and never once talked about it. What is
wrong with C?

External linker with statically compiled signatures.

The rant flows from that.  Sorry, I didn't make that clear.

A library is forever tied to the specific environment with which it was compiled. Any breakage in that propagates.

And there are *tons* of things which can cause that breakage. Operating system difference; processor difference; compiler difference; linker difference; library path difference--the list is endless.

I can copy a 5 year old Java library from one machine to another and it has the *exact same characteristics*. The size of int doesn't change. The existence of some function like ftell/errno/etc. didn't change. The signatures didn't change.

It is acceptable that a processor difference breaks things. This is a compiled language, after all (yes, interpreted C exists. However, until I see a single Linux application using it, your argument is moot.). However, the fact that running one version of difference on the Linux kernel or a support library often irretrievably screws things up is not.

I agree with Autoconf/Autotools. Very baroque. I don't care much for it.
C++ I do not care for, because it seems to break all the time.

And yet nobody is willing to abandon it.

I notice that the KDE folks actually have a monster Perl script to compile everything when checked directly out of SVN. Gee. Doesn't this suggest that maybe autoconf should be dumped altogether?

C itself is mostly fine. The prepocessor may be a a bit whacked, but it
is relatively mindless.

No standard solution for basic things. Before you argue otherwise, write a sockets program that runs on Linux, BSD, *and* Windows.

The go write a sockets program on those same platforms in Java, Perl, Python, Tcl/Tk. Talk about less work.

I have heard of cons and scons, but never looked into them. I have no
idea how they work. Do you know of any projects that use them, as an
example of how they work?

http://www.scons.org/refer.php

The link that caught my eye was that National Instruments uses it. When a business actually starts to use something for revenue, that's a pretty big endorsement.

-a

--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg

Reply via email to