I downloaded the source from git (last modified 20140306),
and built with PKG_CONFIG_PATH=/usr/lib64/pkgconfig ./configure --prefix=/usr --datadir=/usr/share/appdata --enable-sdl-video=yes --enable-sdl-audio=yes
but it segfaults every time.
I tried also without SDL video, and it quits every time
without the segfault warning.
By contrast, cat_7's build from 2010 does work.
my build from source segfaults - please help
Moderators: Cat_7, Ronald P. Regensburg, ClockWise
-
- Space Cadet
- Posts: 9
- Joined: Fri Jan 07, 2011 5:41 pm
Re: my build from source segfaults - please help
Hi,
Yes, the older builds (e.g., built with gcc 4.4) do work. I just did a gdb on my latest build (with the new slirp patches included), and it gave me this:
Reading symbols from ./SheepShaver...done.
(gdb) run
Starting program: /home/hsp/src/macemu-master/SheepShaver/src/Unix/SheepShaver
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
SheepShaver V2.4 by Christian Bauer and Mar"c" Hellwig
[New Thread 0x7fffeb035700 (LWP 10293)]
[New Thread 0x7fffea834700 (LWP 10294)]
[New Thread 0x7fffea033700 (LWP 10295)]
[Thread 0x7fffea033700 (LWP 10295) exited]
[New Thread 0x7fffea033700 (LWP 10296)]
[New Thread 0x7fffe93cd700 (LWP 10297)]
[New Thread 0x7fffe8bcc700 (LWP 10298)]
[Thread 0x7fffe8bcc700 (LWP 10298) exited]
[Thread 0x7fffe93cd700 (LWP 10297) exited]
Reading ROM file...
[New Thread 0x7fffe93cd700 (LWP 10300)]
[New Thread 0x7fffe8bcc700 (LWP 10301)]
[New Thread 0x7fffd3fff700 (LWP 10302)]
[New Thread 0x7fffd3629700 (LWP 10303)]
[New Thread 0x7fffd2e28700 (LWP 10304)]
[New Thread 0x7fffd2627700 (LWP 10305)]
Detected CPU features: MMX SSE SSE2 SSE3 SSSE3
PowerPC CPU emulator by Gwenole Beauchesne
Program received signal SIGSEGV, Segmentation fault.
powerpc_cpu::execute_loadstore<op_template_nop<unsigned int>, input_gpr_except<bit_field<11, 15>, 0>, immediate_operand<bit_field<16, 31>, op_sign_extend_16_32>, false, 4, false, false> (this=0x7864eed0,
opcode=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
store (value=<optimized out>, ea=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_write_memory_4 (value=<optimized out>, addr=<optimized out>)
at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_do_write_memory_4 (v=<optimized out>, a=<optimized out>) at ../kpx_cpu/src/cpu/vm.hpp:69
69 static inline void vm_do_write_memory_4(uint32 *a, uint32 v) { *a = bswap_32(v); }
(gdb) step
sigsegv_handler (sig=11, sip=0x7fffffffd7f0, scp=0x7fffffffd6c0) at sigsegv.cpp:2861
2861 {
(gdb) step
2863 if (handle_badaccess(SIGSEGV_FAULT_HANDLER_ARGS)) {
(gdb) step
handle_badaccess (sip=0x7fffffffd7f0, scp=0x7fffffffd6c0) at sigsegv.cpp:2613
2613 SI.addr = (sigsegv_address_t)SIGSEGV_FAULT_ADDRESS_FAST;
(gdb) step
2623 switch (SIGSEGV_FAULT_HANDLER_INVOKE(SIP)) {
(gdb) step
2613 SI.addr = (sigsegv_address_t)SIGSEGV_FAULT_ADDRESS_FAST;
(gdb) step
2614 SI.pc = (sigsegv_address_t)SIGSEGV_FAULT_INSTRUCTION_FAST;
(gdb) step
2623 switch (SIGSEGV_FAULT_HANDLER_INVOKE(SIP)) {
(gdb) step
sigsegv_handler (sip=0x7fffffffd670) at ../kpx_cpu/sheepshaver_glue.cpp:756
756 {
(gdb) step
764 const uintptr addr = (uintptr)sigsegv_get_fault_address(sip);
(gdb) step
sigsegv_get_fault_address (SIP=SIP@entry=0x7fffffffd670) at sigsegv.cpp:2589
2589 return SIP->addr;
(gdb) step
2590 }
(gdb) step
sigsegv_handler (sip=0x7fffffffd670) at ../kpx_cpu/sheepshaver_glue.cpp:767
767 if ((addr - (uintptr)ROMBaseHost) < ROM_SIZE)
(gdb) step
768 return SIGSEGV_RETURN_SKIP_INSTRUCTION;
(gdb) step
825 }
(gdb) step
handle_badaccess (sip=<optimized out>, scp=0x7fffffffd6c0) at sigsegv.cpp:2635
2635 if (SIGSEGV_SKIP_INSTRUCTION(SIGSEGV_REGISTER_FILE)) {
(gdb)
ix86_skip_instruction (regs=0x7fffffffd6e8) at sigsegv.cpp:987
987 unsigned char * eip = (unsigned char *)regs[X86_REG_EIP];
(gdb)
989 if (eip == 0)
(gdb)
987 unsigned char * eip = (unsigned char *)regs[X86_REG_EIP];
(gdb)
989 if (eip == 0)
(gdb)
1014 if (*eip == 0x66) {
(gdb)
1006 int len = 0;
(gdb)
1002
transfer_size_t transfer_size = SIZE_LONG;
(gdb)
1014 if (*eip == 0x66) {
(gdb)
1030 if ((*eip & 0xf0) == 0x40) {
(gdb)
1028 rex_t rex = { 0, 0, 0, 0 };
(gdb)
1029 bool has_rex = false;
(gdb)
1056 switch (eip[0]) {
(gdb)
1003 instruction_type_t instruction_type = i_MOV;
(gdb)
1056 switch (eip[0]) {
(gdb)
1005 int reg = -1;
(gdb)
1003 instruction_type_t instruction_type = i_MOV;
(gdb)
1001 transfer_type_t transfer_type = SIGSEGV_TRANSFER_UNKNOWN;
(gdb)
1143 if (transfer_type == SIGSEGV_TRANSFER_UNKNOWN) {
(gdb)
sigsegv_handler (sig=<optimized out>, sip=<optimized out>, scp=0x7fffffffd6c0) at sigsegv.cpp:2872
2872 SIGSEGV_ALL_SIGNALS
(gdb)
__bsd_signal (sig=11, handler=0x0) at ../sysdeps/posix/signal.c:36
36 ../sysdeps/posix/signal.c: No such file or directory.
(gdb)
32 in ../sysdeps/posix/signal.c
(gdb)
36 in ../sysdeps/posix/signal.c
(gdb)
32 in ../sysdeps/posix/signal.c
(gdb) step
43 in ../sysdeps/posix/signal.c
(gdb) step
42 in ../sysdeps/posix/signal.c
(gdb) step
43 in ../sysdeps/posix/signal.c
(gdb) step
44 in ../sysdeps/posix/signal.c
(gdb) step
__sigaddset (__sig=11, __set=0x7fffffffd528) at ../sysdeps/unix/sysv/linux/bits/sigset.h:117
117 ../sysdeps/unix/sysv/linux/bits/sigset.h: No such file or directory.
(gdb) step
__bsd_signal (sig=11, handler=0x0) at ../sysdeps/posix/signal.c:47
47 ../sysdeps/posix/signal.c: No such file or directory.
(gdb) step
44 in ../sysdeps/posix/signal.c
(gdb) step
__sigaddset (__sig=11, __set=0x7fffffffd528) at ../sysdeps/unix/sysv/linux/bits/sigset.h:117
117 ../sysdeps/unix/sysv/linux/bits/sigset.h: No such file or directory.
(gdb) step
__bsd_signal (sig=11, handler=0x0) at ../sysdeps/posix/signal.c:47
47 ../sysdeps/posix/signal.c: No such file or directory.
(gdb) step
44 in ../sysdeps/posix/signal.c
(gdb) step
__sigaddset (__sig=11, __set=0x7fffffffd528) at ../sysdeps/unix/sysv/linux/bits/sigset.h:117
117 ../sysdeps/unix/sysv/linux/bits/sigset.h: No such file or directory.
(gdb) step
__bsd_signal (sig=11, handler=0x0) at ../sysdeps/posix/signal.c:46
46 ../sysdeps/posix/signal.c: No such file or directory.
(gdb) step
__sigismember (__sig=11, __set=0x7ffff62bdd00 <_sigintr>)
at ../sysdeps/unix/sysv/linux/bits/sigset.h:116
116 ../sysdeps/unix/sysv/linux/bits/sigset.h: No such file or directory.
(gdb) step
__bsd_signal (sig=11, handler=0x0) at ../sysdeps/posix/signal.c:46
46 ../sysdeps/posix/signal.c: No such file or directory.
(gdb) step
47 in ../sysdeps/posix/signal.c
(gdb) step
__GI___sigaction (sig=11, act=act@entry=0x7fffffffd520, oact=oact@entry=0x7fffffffd5c0)
at ../nptl/sigaction.c:37
37 ../nptl/sigaction.c: No such file or directory.
(gdb) step
43 in ../nptl/sigaction.c
(gdb) step
__GI___libc_sigaction (sig=11, act=act@entry=0x7fffffffd520, oact=oact@entry=0x7fffffffd5c0)
at ../sysdeps/unix/sysv/linux/x86_64/sigaction.c:49
49 ../sysdeps/unix/sysv/linux/x86_64/sigaction.c: No such file or directory.
(gdb) step
53 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
49 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
53 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
56 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
55 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
56 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
55 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
56 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
^[[A57 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
59 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
64 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
67 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
69 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
70 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
^[[A71 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
72 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
75 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
__bsd_signal (sig=<optimized out>, handler=<optimized out>) at ../sysdeps/posix/signal.c:50
50 ../sysdeps/posix/signal.c: No such file or directory.
(gdb) step
51 in ../sysdeps/posix/signal.c
(gdb) step
sigsegv_handler (sig=<optimized out>, sip=<optimized out>, scp=0x7fffffffd6c0) at sigsegv.cpp:2874
2874 }
(gdb) step
powerpc_cpu::execute_loadstore<op_template_nop<unsigned int>, input_gpr_except<bit_field<11, 15>, 0>, immediate_operand<bit_field<16, 31>, op_sign_extend_16_32>, false, 4, false, false> (this=0x7864eed0,
opcode=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
store (value=<optimized out>, ea=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_write_memory_4 (value=<optimized out>, addr=<optimized out>)
at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_do_write_memory_4 (v=<optimized out>, a=<optimized out>) at ../kpx_cpu/src/cpu/vm.hpp:69
69 static inline void vm_do_write_memory_4(uint32 *a, uint32 v) { *a = bswap_32(v); }
(gdb) step
Program received signal SIGSEGV, Segmentation fault.
powerpc_cpu::execute_loadstore<op_template_nop<unsigned int>, input_gpr_except<bit_field<11, 15>, 0>, immediate_operand<bit_field<16, 31>, op_sign_extend_16_32>, false, 4, false, false> (this=0x7864eed0,
opcode=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
store (value=<optimized out>, ea=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_write_memory_4 (value=<optimized out>, addr=<optimized out>)
at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_do_write_memory_4 (v=<optimized out>, a=<optimized out>) at ../kpx_cpu/src/cpu/vm.hpp:69
69 static inline void vm_do_write_memory_4(uint32 *a, uint32 v) { *a = bswap_32(v); }
(gdb) step
[Thread 0x7fffd2627700 (LWP 10305) exited]
[Thread 0x7fffd2e28700 (LWP 10304) exited]
[Thread 0x7fffd3629700 (LWP 10303) exited]
[Thread 0x7fffd3fff700 (LWP 10302) exited]
[Thread 0x7fffe8bcc700 (LWP 10301) exited]
[Thread 0x7fffe93cd700 (LWP 10300) exited]
[Thread 0x7fffea033700 (LWP 10296) exited]
[Thread 0x7fffea834700 (LWP 10294) exited]
[Thread 0x7fffeb035700 (LWP 10293) exited]
Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
Yes, the older builds (e.g., built with gcc 4.4) do work. I just did a gdb on my latest build (with the new slirp patches included), and it gave me this:
Reading symbols from ./SheepShaver...done.
(gdb) run
Starting program: /home/hsp/src/macemu-master/SheepShaver/src/Unix/SheepShaver
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
SheepShaver V2.4 by Christian Bauer and Mar"c" Hellwig
[New Thread 0x7fffeb035700 (LWP 10293)]
[New Thread 0x7fffea834700 (LWP 10294)]
[New Thread 0x7fffea033700 (LWP 10295)]
[Thread 0x7fffea033700 (LWP 10295) exited]
[New Thread 0x7fffea033700 (LWP 10296)]
[New Thread 0x7fffe93cd700 (LWP 10297)]
[New Thread 0x7fffe8bcc700 (LWP 10298)]
[Thread 0x7fffe8bcc700 (LWP 10298) exited]
[Thread 0x7fffe93cd700 (LWP 10297) exited]
Reading ROM file...
[New Thread 0x7fffe93cd700 (LWP 10300)]
[New Thread 0x7fffe8bcc700 (LWP 10301)]
[New Thread 0x7fffd3fff700 (LWP 10302)]
[New Thread 0x7fffd3629700 (LWP 10303)]
[New Thread 0x7fffd2e28700 (LWP 10304)]
[New Thread 0x7fffd2627700 (LWP 10305)]
Detected CPU features: MMX SSE SSE2 SSE3 SSSE3
PowerPC CPU emulator by Gwenole Beauchesne
Program received signal SIGSEGV, Segmentation fault.
powerpc_cpu::execute_loadstore<op_template_nop<unsigned int>, input_gpr_except<bit_field<11, 15>, 0>, immediate_operand<bit_field<16, 31>, op_sign_extend_16_32>, false, 4, false, false> (this=0x7864eed0,
opcode=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
store (value=<optimized out>, ea=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_write_memory_4 (value=<optimized out>, addr=<optimized out>)
at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_do_write_memory_4 (v=<optimized out>, a=<optimized out>) at ../kpx_cpu/src/cpu/vm.hpp:69
69 static inline void vm_do_write_memory_4(uint32 *a, uint32 v) { *a = bswap_32(v); }
(gdb) step
sigsegv_handler (sig=11, sip=0x7fffffffd7f0, scp=0x7fffffffd6c0) at sigsegv.cpp:2861
2861 {
(gdb) step
2863 if (handle_badaccess(SIGSEGV_FAULT_HANDLER_ARGS)) {
(gdb) step
handle_badaccess (sip=0x7fffffffd7f0, scp=0x7fffffffd6c0) at sigsegv.cpp:2613
2613 SI.addr = (sigsegv_address_t)SIGSEGV_FAULT_ADDRESS_FAST;
(gdb) step
2623 switch (SIGSEGV_FAULT_HANDLER_INVOKE(SIP)) {
(gdb) step
2613 SI.addr = (sigsegv_address_t)SIGSEGV_FAULT_ADDRESS_FAST;
(gdb) step
2614 SI.pc = (sigsegv_address_t)SIGSEGV_FAULT_INSTRUCTION_FAST;
(gdb) step
2623 switch (SIGSEGV_FAULT_HANDLER_INVOKE(SIP)) {
(gdb) step
sigsegv_handler (sip=0x7fffffffd670) at ../kpx_cpu/sheepshaver_glue.cpp:756
756 {
(gdb) step
764 const uintptr addr = (uintptr)sigsegv_get_fault_address(sip);
(gdb) step
sigsegv_get_fault_address (SIP=SIP@entry=0x7fffffffd670) at sigsegv.cpp:2589
2589 return SIP->addr;
(gdb) step
2590 }
(gdb) step
sigsegv_handler (sip=0x7fffffffd670) at ../kpx_cpu/sheepshaver_glue.cpp:767
767 if ((addr - (uintptr)ROMBaseHost) < ROM_SIZE)
(gdb) step
768 return SIGSEGV_RETURN_SKIP_INSTRUCTION;
(gdb) step
825 }
(gdb) step
handle_badaccess (sip=<optimized out>, scp=0x7fffffffd6c0) at sigsegv.cpp:2635
2635 if (SIGSEGV_SKIP_INSTRUCTION(SIGSEGV_REGISTER_FILE)) {
(gdb)
ix86_skip_instruction (regs=0x7fffffffd6e8) at sigsegv.cpp:987
987 unsigned char * eip = (unsigned char *)regs[X86_REG_EIP];
(gdb)
989 if (eip == 0)
(gdb)
987 unsigned char * eip = (unsigned char *)regs[X86_REG_EIP];
(gdb)
989 if (eip == 0)
(gdb)
1014 if (*eip == 0x66) {
(gdb)
1006 int len = 0;
(gdb)
1002
transfer_size_t transfer_size = SIZE_LONG;
(gdb)
1014 if (*eip == 0x66) {
(gdb)
1030 if ((*eip & 0xf0) == 0x40) {
(gdb)
1028 rex_t rex = { 0, 0, 0, 0 };
(gdb)
1029 bool has_rex = false;
(gdb)
1056 switch (eip[0]) {
(gdb)
1003 instruction_type_t instruction_type = i_MOV;
(gdb)
1056 switch (eip[0]) {
(gdb)
1005 int reg = -1;
(gdb)
1003 instruction_type_t instruction_type = i_MOV;
(gdb)
1001 transfer_type_t transfer_type = SIGSEGV_TRANSFER_UNKNOWN;
(gdb)
1143 if (transfer_type == SIGSEGV_TRANSFER_UNKNOWN) {
(gdb)
sigsegv_handler (sig=<optimized out>, sip=<optimized out>, scp=0x7fffffffd6c0) at sigsegv.cpp:2872
2872 SIGSEGV_ALL_SIGNALS
(gdb)
__bsd_signal (sig=11, handler=0x0) at ../sysdeps/posix/signal.c:36
36 ../sysdeps/posix/signal.c: No such file or directory.
(gdb)
32 in ../sysdeps/posix/signal.c
(gdb)
36 in ../sysdeps/posix/signal.c
(gdb)
32 in ../sysdeps/posix/signal.c
(gdb) step
43 in ../sysdeps/posix/signal.c
(gdb) step
42 in ../sysdeps/posix/signal.c
(gdb) step
43 in ../sysdeps/posix/signal.c
(gdb) step
44 in ../sysdeps/posix/signal.c
(gdb) step
__sigaddset (__sig=11, __set=0x7fffffffd528) at ../sysdeps/unix/sysv/linux/bits/sigset.h:117
117 ../sysdeps/unix/sysv/linux/bits/sigset.h: No such file or directory.
(gdb) step
__bsd_signal (sig=11, handler=0x0) at ../sysdeps/posix/signal.c:47
47 ../sysdeps/posix/signal.c: No such file or directory.
(gdb) step
44 in ../sysdeps/posix/signal.c
(gdb) step
__sigaddset (__sig=11, __set=0x7fffffffd528) at ../sysdeps/unix/sysv/linux/bits/sigset.h:117
117 ../sysdeps/unix/sysv/linux/bits/sigset.h: No such file or directory.
(gdb) step
__bsd_signal (sig=11, handler=0x0) at ../sysdeps/posix/signal.c:47
47 ../sysdeps/posix/signal.c: No such file or directory.
(gdb) step
44 in ../sysdeps/posix/signal.c
(gdb) step
__sigaddset (__sig=11, __set=0x7fffffffd528) at ../sysdeps/unix/sysv/linux/bits/sigset.h:117
117 ../sysdeps/unix/sysv/linux/bits/sigset.h: No such file or directory.
(gdb) step
__bsd_signal (sig=11, handler=0x0) at ../sysdeps/posix/signal.c:46
46 ../sysdeps/posix/signal.c: No such file or directory.
(gdb) step
__sigismember (__sig=11, __set=0x7ffff62bdd00 <_sigintr>)
at ../sysdeps/unix/sysv/linux/bits/sigset.h:116
116 ../sysdeps/unix/sysv/linux/bits/sigset.h: No such file or directory.
(gdb) step
__bsd_signal (sig=11, handler=0x0) at ../sysdeps/posix/signal.c:46
46 ../sysdeps/posix/signal.c: No such file or directory.
(gdb) step
47 in ../sysdeps/posix/signal.c
(gdb) step
__GI___sigaction (sig=11, act=act@entry=0x7fffffffd520, oact=oact@entry=0x7fffffffd5c0)
at ../nptl/sigaction.c:37
37 ../nptl/sigaction.c: No such file or directory.
(gdb) step
43 in ../nptl/sigaction.c
(gdb) step
__GI___libc_sigaction (sig=11, act=act@entry=0x7fffffffd520, oact=oact@entry=0x7fffffffd5c0)
at ../sysdeps/unix/sysv/linux/x86_64/sigaction.c:49
49 ../sysdeps/unix/sysv/linux/x86_64/sigaction.c: No such file or directory.
(gdb) step
53 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
49 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
53 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
56 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
55 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
56 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
55 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
56 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
^[[A57 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
59 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
64 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
67 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
69 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
70 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
^[[A71 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
72 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
75 in ../sysdeps/unix/sysv/linux/x86_64/sigaction.c
(gdb) step
__bsd_signal (sig=<optimized out>, handler=<optimized out>) at ../sysdeps/posix/signal.c:50
50 ../sysdeps/posix/signal.c: No such file or directory.
(gdb) step
51 in ../sysdeps/posix/signal.c
(gdb) step
sigsegv_handler (sig=<optimized out>, sip=<optimized out>, scp=0x7fffffffd6c0) at sigsegv.cpp:2874
2874 }
(gdb) step
powerpc_cpu::execute_loadstore<op_template_nop<unsigned int>, input_gpr_except<bit_field<11, 15>, 0>, immediate_operand<bit_field<16, 31>, op_sign_extend_16_32>, false, 4, false, false> (this=0x7864eed0,
opcode=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
store (value=<optimized out>, ea=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_write_memory_4 (value=<optimized out>, addr=<optimized out>)
at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_do_write_memory_4 (v=<optimized out>, a=<optimized out>) at ../kpx_cpu/src/cpu/vm.hpp:69
69 static inline void vm_do_write_memory_4(uint32 *a, uint32 v) { *a = bswap_32(v); }
(gdb) step
Program received signal SIGSEGV, Segmentation fault.
powerpc_cpu::execute_loadstore<op_template_nop<unsigned int>, input_gpr_except<bit_field<11, 15>, 0>, immediate_operand<bit_field<16, 31>, op_sign_extend_16_32>, false, 4, false, false> (this=0x7864eed0,
opcode=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
store (value=<optimized out>, ea=<optimized out>) at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_write_memory_4 (value=<optimized out>, addr=<optimized out>)
at ../kpx_cpu/src/cpu/ppc/ppc-execute.cpp:585
585 memory_helper<SZ, RX>::store(ea, operand_RS::get(this, opcode));
(gdb) step
vm_do_write_memory_4 (v=<optimized out>, a=<optimized out>) at ../kpx_cpu/src/cpu/vm.hpp:69
69 static inline void vm_do_write_memory_4(uint32 *a, uint32 v) { *a = bswap_32(v); }
(gdb) step
[Thread 0x7fffd2627700 (LWP 10305) exited]
[Thread 0x7fffd2e28700 (LWP 10304) exited]
[Thread 0x7fffd3629700 (LWP 10303) exited]
[Thread 0x7fffd3fff700 (LWP 10302) exited]
[Thread 0x7fffe8bcc700 (LWP 10301) exited]
[Thread 0x7fffe93cd700 (LWP 10300) exited]
[Thread 0x7fffea033700 (LWP 10296) exited]
[Thread 0x7fffea834700 (LWP 10294) exited]
[Thread 0x7fffeb035700 (LWP 10293) exited]
Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
-
- Space Cadet
- Posts: 9
- Joined: Fri Jan 07, 2011 5:41 pm
Re: my build from source segfaults - please help
That's a lot of gobbly gook. Any idea what it means?
My system has gcc 4.8.2. Is it hopeless for me to
continue trying to compile and run sheepshaver?
My system has gcc 4.8.2. Is it hopeless for me to
continue trying to compile and run sheepshaver?
Re: my build from source segfaults - please help
Hi,
It's would be best to use the builds that are working from our forum.
The errors I pasted will need to be fixed by a developer.
Best,
Cat_7
It's would be best to use the builds that are working from our forum.
The errors I pasted will need to be fixed by a developer.
Best,
Cat_7
-
- Space Cadet
- Posts: 9
- Joined: Fri Jan 07, 2011 5:41 pm
Re: my build from source segfaults - please help
OK, for now. But may I ask: Is the problem with GCC > 4.4
when compiling SS alone? In other words, if I install GCC 4.4,
and compile SS, would I also have to recompile the dependencies
(SDL, etc.) with the older GCC?
Thanks again.
when compiling SS alone? In other words, if I install GCC 4.4,
and compile SS, would I also have to recompile the dependencies
(SDL, etc.) with the older GCC?
Thanks again.
Re: my build from source segfaults - please help
Hi,
Yes, you should compile SDL with the same gcc version you compile SheepShaver with.
It's easy to install SDL in a separate folder and then point SheepShaver to it.
Use these steps in the folder into which you unpacked SDL:
./autogen.sh
./configure --disable-shared --prefix=`pwd`
make
make install
PATH=`pwd`/bin:$PATH
export PATH
And then go the SheepShaver source and compile. It will find the SDL installation in the path.
The highest version of gcc and g++ you should install is 4.6.
Best,
Cat_7
Yes, you should compile SDL with the same gcc version you compile SheepShaver with.
It's easy to install SDL in a separate folder and then point SheepShaver to it.
Use these steps in the folder into which you unpacked SDL:
./autogen.sh
./configure --disable-shared --prefix=`pwd`
make
make install
PATH=`pwd`/bin:$PATH
export PATH
And then go the SheepShaver source and compile. It will find the SDL installation in the path.
The highest version of gcc and g++ you should install is 4.6.
Best,
Cat_7
-
- Space Cadet
- Posts: 9
- Joined: Fri Jan 07, 2011 5:41 pm
Re: my build from source segfaults - please help
Success!
GCC 4.6.3, SDL 1.2.15
Thanks for your help!
GCC 4.6.3, SDL 1.2.15
Thanks for your help!
- rickyzhang
- Apple Corer
- Posts: 205
- Joined: Mon Sep 15, 2014 7:59 pm
Re: my build from source segfaults - please help
Hi Gentlemen,
I know this is a little big old thread. But I wonder if this is related to GCC compiler or kernel. I want to fix this and make it works under latest GCC.
thanks,
Ricky
I know this is a little big old thread. But I wonder if this is related to GCC compiler or kernel. I want to fix this and make it works under latest GCC.
thanks,
Ricky
There is an App for that!
https://github.com/rickyzhang82
https://github.com/rickyzhang82