POV-Ray : Newsgroups : povray.advanced-users : 3.8.0-beta.2 - illegal instruction Server Time
8 Nov 2025 17:31:46 EST (-0500)
  3.8.0-beta.2 - illegal instruction (Message 1 to 8 of 8)  
From: yesbird
Subject: 3.8.0-beta.2 - illegal instruction
Date: 7 Nov 2025 19:37:17
Message: <690e90bd$1@news.povray.org>
Greetings !

I am trying to build official beta from this tarball:
povunix-v3.8.0-beta.2-src.tar.gz.

Build is successful, but on runtime I am getting following error:
Illegal instruction (core dumped).

I guess that by default 'configure' turns on support for modern
instructions, that my CPU is not supported, so what is the best way
to control them and avoid this error ?

My present environment is following:
Intel(R) Core(TM) i5 CPU  750  @ 2.67GHz
Ubuntu 24.04.3 LTS
-- 
YB


Post a reply to this message

From: jr
Subject: Re: 3.8.0-beta.2 - illegal instruction
Date: 8 Nov 2025 02:15:00
Message: <web.690eed3d7b122386475fba6a6cde94f1@news.povray.org>
hi,

yesbird wrote:
> Greetings !
>
> I am trying to build official beta from this tarball:
> povunix-v3.8.0-beta.2-src.tar.gz.
>
> Build is successful, but on runtime I am getting following error:
> Illegal instruction (core dumped).
>
> I guess that by default 'configure' turns on support for modern
> instructions, that my CPU is not supported, so what is the best way
> to control them and avoid this error ?
>
> My present environment is following:
> Intel(R) Core(TM) i5 CPU  750  @ 2.67GHz
> Ubuntu 24.04.3 LTS
> --
> YB

I published build scripts once or twice, see link.  write if further problems.
<news.povray.org/web.660c3b34a01057ea1686e436cde94f1%40news.povray.org>


regards, jr.


Post a reply to this message

From: yesbird
Subject: Re: 3.8.0-beta.2 - illegal instruction
Date: 8 Nov 2025 04:10:57
Message: <690f0921$1@news.povray.org>
On 08/11/2025 10:11, jr wrote:
> I published build scripts once or twice, see link.  write if further problems.
> <news.povray.org/web.660c3b34a01057ea1686e436cde94f1%40news.povray.org>

Thanks, jr, for the fast reply, I will try it, but this solution looks
like, a hack. I'd prefer 'official' method to control usage of advanced
CPU instructions, via config parameters.

Don't you know, if it's possible ?
-- 
YB


Post a reply to this message

From: jr
Subject: Re: 3.8.0-beta.2 - illegal instruction
Date: 8 Nov 2025 04:35:00
Message: <web.690f0e2f7b122386475fba6a6cde94f1@news.povray.org>
yesbird wrote:
> ...
> Thanks, jr, for the fast reply, I will try it, but this solution looks
> like, a hack.

well, it is for WFP's "yuqk" fork :-).


> I'd prefer 'official' method to control usage of advanced
> CPU instructions, via config parameters.
> Don't you know, if it's possible ?

unsure even what you mean.  there are some bits of the source which are
"hand-optimised" for specific CPU types, but the detection & inclusion is
automatic.

either way, I've attached another "hack"[*] </grin>, a beta.2 build script.

[*] anyway, works.  </shrug>


regards, jr.


Post a reply to this message


Attachments:
Download 'povray.slackbuild.txt' (1 KB)

From: yesbird
Subject: Re: 3.8.0-beta.2 - illegal instruction
Date: 8 Nov 2025 05:55:34
Message: <690f21a6$1@news.povray.org>
On 08/11/2025 12:32, jr wrote:
> unsure even what you mean.  there are some bits of the source which are
> "hand-optimised" for specific CPU types, but the detection & inclusion is
> automatic.
> 
> either way, I've attached another "hack"[*] </grin>, a beta.2 build script.
> 
> [*] anyway, works.  </shrug>


Unfortunately results is the same: "no result".
---------------------------------------------------------------------
./unix/povray +i./scenes/advanced/biscuit.pov -f +d +p +v +w320 +h240 
+a0.3 +L./include
make: *** [Makefile:1089: check] Illegal instruction (core dumped)
---------------------------------------------------------------------
YB


Post a reply to this message

From: William F Pokorny
Subject: Re: 3.8.0-beta.2 - illegal instruction
Date: 8 Nov 2025 06:59:11
Message: <690f308f$1@news.povray.org>
On 11/8/25 02:55, yesbird wrote:
> On 08/11/2025 12:32, jr wrote:
>> unsure even what you mean.  there are some bits of the source which are
>> "hand-optimised" for specific CPU types, but the detection & inclusion is
>> automatic.
>>
>> either way, I've attached another "hack"[*] </grin>, a beta.2 build 
>> script.
>>
>> [*] anyway, works.  </shrug>
> 
> 
> Unfortunately results is the same: "no result".
> ---------------------------------------------------------------------
> ./unix/povray +i./scenes/advanced/biscuit.pov -f +d +p +v +w320 +h240 
> +a0.3 +L./include
> make: *** [Makefile:1089: check] Illegal instruction (core dumped)
> ---------------------------------------------------------------------
> YB
> 

There can be many causes for what you are seeing. Things you might try:

1) Download the latest yuqk tarball at:

https://news.povray.org/povray.binaries.programming/thread/%3C67eba626%40news.povray.org%3E/

Unpack it and run:

./configure -q COMPILED_BY="YB_yuqk" CXXFLAGS="-std=c++17"
make -j4
make check

The yuqk fork ships without any compiler optimizations during 
./configure - aside from the cpu specific noise code where it has fixed 
some 'gnu compiler broken' cpu detection code.

2) Both the default unix build and the build script jr provided use 
-ffast-math. There are a number of flaky fails due recent compiler 
changes to what -ffast-math does. Change that flag to: -fno-fast-math or 
add the flag -fno-finite-math-only to your CXXFLAGS and try another build.

3) You can try a configure with the defines:

-DDISABLE_OPTIMIZED_NOISE_AVXFMA4 -DDISABLE_OPTIMIZED_NOISE_AVX2FMA3 
-DISABLE_OPTIMIZED_NOISE_AVX

Which 'should' turn off any use of the cpu target specific hand 
optimized code - but they might not turn off the dynamic cpu detection 
code which runs ahead of the hand optimized code (I don't remember).

There is too a -DDISABLE_OPTIMIZED_NOISE_AVX_PORTABLE, but my memory is 
fuzzy as to what that means - probably harmless to add it to those above.

4) At a terminal after a illegal instruction problem build, are you able 
to run:

./unix/povray --help

If so, try each of:

touch bogus.pov; ./unix/povray bogus.pov -d +p

touch bogus.pov; ./unix/povray bogus.pov -d -p

touch bogus.pov; ./unix/povray bogus.pov -d +p -fn

Bill P.


Post a reply to this message

From: yesbird
Subject: Re: 3.8.0-beta.2 - illegal instruction
Date: 8 Nov 2025 08:05:26
Message: <690f4016$1@news.povray.org>
On 08/11/2025 14:59, William F Pokorny wrote:
> There can be many causes for what you are seeing. Things you might try:
> ... 

Many thanks for such a detailed response, I will put these tips to my
'internal storage' ).

The .configure option that helps was '-disable-optimiz'.
Probably I was too lazy to run:
./configure --help

and examine output, instead of disturbing the community, sorry for
inconvenience.
-- 
YB


Post a reply to this message

From: jr
Subject: Re: 3.8.0-beta.2 - illegal instruction
Date: 8 Nov 2025 09:00:00
Message: <web.690f4c6c7b122386475fba6a6cde94f1@news.povray.org>
hi,

William F Pokorny <ano### [at] anonymousorg> wrote:
> ...
> 2) Both the default unix build and the build script jr provided use
> -ffast-math. There are a number of flaky fails due recent compiler
> changes to what -ffast-math does. Change that flag to: -fno-fast-math or
> add the flag -fno-finite-math-only to your CXXFLAGS and try another build.

thanks !


@yesbird
> The .configure option that helps was '-disable-optimiz'.

good that you found a work-around.


regards, jr.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.