[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [ardour-dev] ardour

>> This was not the only reason. Similar breakage occurs as soon as the
>> user acquires a C++ library in binary format that was compiled by a
>> g++ with either different options and/or a different ABI compared the
>> one used to compile and link the application. If someone upgrades from
>> g++ 2.95 to g++ 3.2, for example, and they fail to recompile *every*
>> C++ library on their system, problems will arise sooner or later
>> (depending on how many C++ apps they run and how they were built).
>This is the work of the distribution to get it right. Debian has already
>plans to make a smooth G++ transition without breakage. This does not
>justify at all the use of static linking (which is evil imho).
>> They were able to compile things. If they could not have done this,
>> life would have been easier. Instead, they compiled them, and then
>> things didn't work.
>Debian users don't have to compile things. This is the maintainer's

but they *do* compile things. and when they compile and link a C++
application, things can go seriously wrong without them having any
understanding of why. the program just works "badly".

>work, helped by the autobuilders. Moreover, the build dependencies can
>guarantee you the package will build fine if you try at home.

!!NO THEY DO NOT!! why can people not understand this? there is no
dependency system for linux in existence that can check this. its not
a matter of checking which version of a library is installed, or which
version of a compiler. its a matter of checking:

	a) which compiler a C++ library was compiled with
	b) which compiler flags were used

i don't know, and nobody that i have spoken to knows, of any way to do
this. without it, "building at home" is subject to the kind of bizarre
breakage we saw with ardour for a year or more.

this doesn't with C++ code that doesn't use certain features in the
language, which is why some C++ apps haven't had these problems.


Reply to: