installation aborted due to poor programming practices
On 4/19/2010 10:19 AM, Arttu V. wrote:
> On 4/19/10, Helmut Jarausch <email@example.com> wrote:
>> On 19 Apr, Neil Bothwick wrote:
>>> On Mon, 19 Apr 2010 12:47:17 +0200 (CEST), Helmut Jarausch wrote:
>>>> the installation of a package (unofficial gimp-gap) is 'aborted due to
>>>> poor programming practices' probably since there have been lots of
>>>> dereferencing type-punned pointers and similar warnings.
>>>> How can I forced portage to install it anyway?
>>> Possibly FEATURES="-strict" emerge --opts blah
>> Unfortunately this didn't help.
> I wonder if strict and stricter FEATURES are somehow hardwired to each
> other inside portage code, or whether they're considered separate
> Anyway, you could try FEATURES="-strict -stricter" to see which way it
> works. If that won't work then the next step could be to play around
> with the QA_STRICT_* variables mentioned in make.conf man page
> (haven't tried, so don't know if they'll help either).
The code that's causing the abort doesn't seem to have any options,
features, conditions, etc. that you can use to disable it. If it finds
any misused type pointers, and you're on a 64-bit arch, it aborts.
Note that the errors it's checking for aren't your normal sloppy pointer
usages. It's specifically looking for functions that are implicitly
declared as returning int, then later used as if they returned (void *).
That kind of thing can only happen if the developer just flat out
forgot to include the prototypes ("poor programming practice" doesn't
even come close) and are almost guaranteed to cause something to crash
eventually on a 64-bit arch.
The only thing I can see that may let you install this overtop of
portage's complaints is to unset PORTAGE_LOG_FILE so the gcc warnings
have nowhere to go and portage won't find them.
See also: http://bugs.gentoo.org/40023