|
|
On 07/26/2013 04:59 AM, sseetal wrote:
> Hey guys,
>
> I'm attempting to build the latest version on Ubuntu and getting a
> problem...It's simply
>
> "Illegal instruction (core dumped)"
>
> For completeness I'm attaching my entire dump of configuring, compiling,
> etc...Your help would be much appreciated...
>
> Thanks
>
> Samir
>
...
> make[2]: Leaving directory `/root/code/povray/src/povray-3.7.0.RC7'
> make[1]: Leaving directory `/root/code/povray/src/povray-3.7.0.RC7'
> :~/code/povray/src/povray-3.7.0.RC7# povray
> Illegal instruction (core dumped)
>
Hi Samir,
If you've not yet found the problem, you can often get a pretty good
clue if you can get a core file and run a debugger to get a function
stack back trace at the time of the dump. I'm no debugging expert, but I
have somewhat often used the method below.
Ubuntu is set to not generate core files on a core dump. So first, in
the xterm where you are running your compiled povray command, type:
ulimit -c unlimited
Run your existing povray command and look for a file named "core". If
you get this, rerun ./configure with "--disable-strip" and guessing
"--enable-debug" might be needed too given I do not see -g flags during
the file compiles. Again compile all of povray. In other words, best to
do a "make clean" then a "make"/"make install".
If the compile is good, in the directory where you will again run the
povray command remove any exist "core" file with "rm core". Again run
povray. Given it still dumps, check that the core file was created.
Then use the linux gdb debugger typing the command:
gdb <full_path_to_povray_you_ran> core
(you can get the povray full path with the command "which povray")
Once gdb is up, type :
where
then :
bt
Hopefully it gives a useful pointer & stack trace where povray is dying.
Type :
quit
to exit gdb.
Things get more complicated if threads are involved, but you are dying
so fast I'd bet you are not yet kicking off threads. If the issue is in
some library used by povray itself without symbols this too gets
complicated - and very quickly beyond what I know off the top of my
head. You can run commands within debuggers link gdb, but I've not done
this myself with C/C++ in 10 years or more.
Bill P.
Post a reply to this message
|
|