What does gdb say?
/ Henrik Grubbström (Lysator)
Previous text:
2003-02-01 22:46: Subject: Pike 7.4 on Debian/Sparc - a build problem
Hey guys,
I've got pike failing to build a deb on a sparc64 machine. It segfaults while trying to run precompile.sh using tpike. Is it really necessary to run precompile.sh on exported sources? If not - how can avoid it? And the most important issues:
- the original build failure record:
http://buildd.debian.org/fetch.php?&pkg=pike7.4&ver=7.4.13-2&arc...
- a fragment of a failed build when just running 'make' in a debian-patched
directory on sparc64
cpu : TI UltraSparc II (BlackBird) fpu : UltraSparc II integrated FPU promlib : Version 3 Revision 27 prom : 3.27.0 type : sun4u ncpus probed : 1 ncpus active : 1 Cpu0Bogo : 591.46 Cpu0ClkTck : 0000000011a4695a MMU Type : Spitfire
the fragment:
precompile: /scratch/grendel/pike7.4-7.4.13/build/linux-2.4.18-sparc64/tpike -DNOT_INSTALLED -DPRECOMPILED_SEARCH_MORE -m/scratch/grendel/pike7.4-7.4.13/build/linux-2.4.18-sparc64/master.pike /scratch/grendel/pike7.4-7.4.13/bin/mktreeopt.pike /scratch/grendel/pike7.4-7.4.13/src/treeopt.in (method=QQ) /scratch/grendel/pike7.4-7.4.13/build/linux-2.4.18-sparc64/precompile.sh: line 203: 15768 Segmentation fault $RUNPIKE $SCRIPT "$@" 1>&5
- a final fragment of strace from the above segfault:
22764 mprotect(0x2693c0, 52, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EINVAL (Invalid argument) 22764 mprotect(0x2693c0, 48, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EINVAL (Invalid argument) 22764 mprotect(0x296da8, 1144, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EINVAL (Invalid argument) 22764 mprotect(0x2adc98, 2432, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EINVAL (Invalid argument) 22764 mprotect(0x2adc98, 2424, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EINVAL (Invalid argument) 22764 mprotect(0x2adc98, 3376, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EINVAL (Invalid argument) 22764 mprotect(0x2adc98, 4912, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EINVAL (Invalid argument) 22764 mprotect(0x2adc98, 4912, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EINVAL (Invalid argument) 22764 mprotect(0x2adc98, 4912, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EINVAL (Invalid argument) 22764 brk(0) = 0x2ba000 22764 brk(0x2bc000) = 0x2bc000 22764 mprotect(0x2b70a8, 10104, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EINVAL (Invalid argument) 22764 --- SIGSEGV (Segmentation fault) --- 22764 +++ killed by SIGSEGV +++
- and a compile-time warning (not sure if related):
/scratch/grendel/pike7.4-7.4.13/src/program.c: In function store_constant': /scratch/grendel/pike7.4-7.4.13/src/program.c:4508: warning: variable e'might be clobbered by longjmp' or vfork'
Right now I'm trying to compile the deb on another sparc machine (will take a while), but I'd appreciate any help on that issue...
TIA,
marek
p.s. if you need access to one of the sparc machines, contact me privately, I think we will be able to arrange something.
/ Brevbäraren