Re: wine-0.9.37, ntdll.so loading fails, gdb output included
Sorry about the delay (I'm sending this reply ASAP) I have no real port yet, but I can provide two patches and a script which should help you build wine-0.9.37. Any issues with the configure should be related to missing libraries (install the proper packages to resolve that). Note: To me it seems that the inlined _dl_strlcpy in ld.so is part of the problem. I don't understand the inner workings of ld.so, and the inlined code makes it difficult to debug (reading regs and guessing...?). I'm still not sure if the $ORIGIN linker symbol (may be linux-specific ld.so symbol?) is a problem, or if it is supposed to work on OpenBSD 4.1. The dnsapi of wine http://www.nabble.com/file/p10803006/patch.configure.ac patch.configure.ac http://www.nabble.com/file/p10803006/patch.dlls_Makefile patch.dlls_Makefile http://www.nabble.com/file/p10803006/rustybuildscript.sh rustybuildscript.sh does not build, hence a patch which simply disables building of dnsapi. If we get wine running, the dnsapi gets higher priority of course. Good luck! Kurt Miller-4 wrote: Please email the list the updated port so that people who may be interested in helping you can reproduce the problem. On Saturday 19 May 2007 2:32:19 pm Vortechz wrote: Jacob probably recognizes this: Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe Program received signal SIGSEGV, Segmentation fault. [Switching to process 31915, thread 0x8891a000] 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so (gdb) bt #0 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so #1 0x06a4e50a in _dl_opendir () from /usr/libexec/ld.so #2 0x06a4e938 in _dl_find_shlib () from /usr/libexec/ld.so #3 0x06a4ebe3 in _dl_load_shlib_hint () from /usr/libexec/ld.so #4 0x06a4ee5c in _dl_load_shlib () from /usr/libexec/ld.so #5 0x06a4c66d in dlopen () from /usr/libexec/ld.so #6 0x0a667d54 in wine_dlopen ( filename=0x7d4d014a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, error=0xcfbcaff0 \020°¼Ï, errorsize=1024) at loader.c:703 #7 0x0a667cb6 in wine_init (argc=16392, argv=0xcfbcafa0, error=0xcfbcaff0 \020°¼Ï, error_size=1024) at loader.c:655 #8 0x1c000f92 in main (argc=2, argv=0xcfbcb46c) at main.c:111 * Now, I want to know more about what ld.so is doing: (gdb) symbol /usr/libexec/ld.so Load new symbol table from /usr/libexec/ld.so? (y or n) y Reading symbols from /usr/libexec/ld.so...done. (gdb) run /emul/w/windows/sol.exe The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe Program received signal SIGSEGV, Segmentation fault. [Switching to process 17606, thread 0x7f924000] 0x084f9bec in ?? () from /usr/libexec/ld.so (gdb) bt #0 0x084f9bec in ?? () from /usr/libexec/ld.so #1 0x284f718c in ?? () from /usr/libexec/ld.so #2 0x0008 in ?? () #3 0xcfbf5ee8 in ?? () #4 0x084fa50a in ?? () from /usr/libexec/ld.so #5 0x4000 in dladdr () Cannot access memory at address 0x3fc8 * 0x3fc8 seem to be constant and appears at every try * Next...I compiled ld.so and loaded symbols from ld.so and util.o in /usr/src/libexec/ld.so/ (stupid move?) to get this: [Switching to process 31541, thread 0x831a3000] 0x04468bec in _dl_malloc () from /usr/libexec/ld.so (gdb) bt #0 0x04468bec in _dl_malloc () from /usr/libexec/ld.so #1 0x0446950a in _dl_opendir () from /usr/libexec/ld.so #2 0x04469938 in _dl_find_shlib () from /usr/libexec/ld.so #3 0x04469be3 in _dl_load_shlib_hint () from /usr/libexec/ld.so #4 0x04469e5c in _dl_load_shlib () from /usr/libexec/ld.so #5 0x0446766d in dlopen () from /usr/libexec/ld.so #6 0x0d731d54 in wine_dlopen ( filename=0x877dd14a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, error=0xcfbd5074 \224P½Ï, errorsize=1024) at loader.c:703 #7 0x0d731cb6 in wine_init (argc=16392, argv=0xcfbd5020, error=0xcfbd5074 \224P½Ï, error_size=1024) at loader.c:655 #8 0x1c000f92 in ?? () #9 0x0002 in __stack_smash_handler () #10 0xcfbd54f0 in ?? () #11 0xcfbd5074 in ?? () #12 0x0400 in ?? () #13 0x3c00 in ?? () #14 0x0020 in __stack_smash_handler () #15 0x0030 in _dl_strdup () Cannot access memory at address 0x20 * I'm lost here.! * util.c has a stack protector dummy... void __stack_smash_handler(char [], int); void __stack_smash_handler(char func[], int damaged) { _dl_exit(127); } * _dl_exit is essentially (an asm wrapper for syscall) _exit(127) * I don't know what to do now...except screaming for HLP. Jacob Meuser-2 wrote: On Sun, May 13, 2007 at 12:38:30AM +0200, Vortechz Anderson wrote: wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi Execution leads to segfault. (Note: Generic kernel _has_ SYSV MSG/SHM/SEMand I have not forgot sysctl machdep.userldt=1) I know there are some issues about wine's use of
Re: wine-0.9.37, ntdll.so loading fails, gdb output included
On 5/19/07, Sam Fourman Jr. [EMAIL PROTECTED] wrote: I would be interested in helping with this port Sam Fourman Jr. On 5/19/07, Kurt Miller [EMAIL PROTECTED] wrote: Please email the list the updated port so that people who may be interested in helping you can reproduce the problem. On Saturday 19 May 2007 2:32:19 pm Vortechz wrote: Jacob probably recognizes this: Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe Program received signal SIGSEGV, Segmentation fault. [Switching to process 31915, thread 0x8891a000] 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so (gdb) bt #0 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so #1 0x06a4e50a in _dl_opendir () from /usr/libexec/ld.so #2 0x06a4e938 in _dl_find_shlib () from /usr/libexec/ld.so #3 0x06a4ebe3 in _dl_load_shlib_hint () from /usr/libexec/ld.so #4 0x06a4ee5c in _dl_load_shlib () from /usr/libexec/ld.so #5 0x06a4c66d in dlopen () from /usr/libexec/ld.so #6 0x0a667d54 in wine_dlopen ( filename=0x7d4d014a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, error=0xcfbcaff0 \020°¼Ï, errorsize=1024) at loader.c:703 #7 0x0a667cb6 in wine_init (argc=16392, argv=0xcfbcafa0, error=0xcfbcaff0 \020°¼Ï, error_size=1024) at loader.c:655 #8 0x1c000f92 in main (argc=2, argv=0xcfbcb46c) at main.c:111 * Now, I want to know more about what ld.so is doing: (gdb) symbol /usr/libexec/ld.so Load new symbol table from /usr/libexec/ld.so? (y or n) y Reading symbols from /usr/libexec/ld.so...done. (gdb) run /emul/w/windows/sol.exe The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe Program received signal SIGSEGV, Segmentation fault. [Switching to process 17606, thread 0x7f924000] 0x084f9bec in ?? () from /usr/libexec/ld.so (gdb) bt #0 0x084f9bec in ?? () from /usr/libexec/ld.so #1 0x284f718c in ?? () from /usr/libexec/ld.so #2 0x0008 in ?? () #3 0xcfbf5ee8 in ?? () #4 0x084fa50a in ?? () from /usr/libexec/ld.so #5 0x4000 in dladdr () Cannot access memory at address 0x3fc8 * 0x3fc8 seem to be constant and appears at every try * Next...I compiled ld.so and loaded symbols from ld.so and util.o in /usr/src/libexec/ld.so/ (stupid move?) to get this: [Switching to process 31541, thread 0x831a3000] 0x04468bec in _dl_malloc () from /usr/libexec/ld.so (gdb) bt #0 0x04468bec in _dl_malloc () from /usr/libexec/ld.so #1 0x0446950a in _dl_opendir () from /usr/libexec/ld.so #2 0x04469938 in _dl_find_shlib () from /usr/libexec/ld.so #3 0x04469be3 in _dl_load_shlib_hint () from /usr/libexec/ld.so #4 0x04469e5c in _dl_load_shlib () from /usr/libexec/ld.so #5 0x0446766d in dlopen () from /usr/libexec/ld.so #6 0x0d731d54 in wine_dlopen ( filename=0x877dd14a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, error=0xcfbd5074 \224P½Ï, errorsize=1024) at loader.c:703 #7 0x0d731cb6 in wine_init (argc=16392, argv=0xcfbd5020, error=0xcfbd5074 \224P½Ï, error_size=1024) at loader.c:655 #8 0x1c000f92 in ?? () #9 0x0002 in __stack_smash_handler () #10 0xcfbd54f0 in ?? () #11 0xcfbd5074 in ?? () #12 0x0400 in ?? () #13 0x3c00 in ?? () #14 0x0020 in __stack_smash_handler () #15 0x0030 in _dl_strdup () Cannot access memory at address 0x20 * I'm lost here.! * util.c has a stack protector dummy... void __stack_smash_handler(char [], int); void __stack_smash_handler(char func[], int damaged) { _dl_exit(127); } * _dl_exit is essentially (an asm wrapper for syscall) _exit(127) * I don't know what to do now...except screaming for HLP. Jacob Meuser-2 wrote: On Sun, May 13, 2007 at 12:38:30AM +0200, Vortechz Anderson wrote: wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi Execution leads to segfault. (Note: Generic kernel _has_ SYSV MSG/SHM/SEMand I have not forgot sysctl machdep.userldt=1) I know there are some issues about wine's use of kernel threads on OpenBSD. I am clueless about the true problem though. If possible, I would like some comments on the ktrace kdump. looks familiar. before you even get to problems with threads, you have problems with wine wanting to control where things are located. I've got a port of 0.9.10 that gets a little farther than what you got here. loads libwine and libc, but cannot load ntdll.dll.so. try setting 'ac_cv_cflags__Wl___section_start__interp_0x7bf00400=no' in your environment before running configure and see if that gets you any farther. definitely not a trivial port. // V.A. 25268 ktrace RET ktrace 0 25268 ktrace CALL execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8) 25268 ktrace NAMI /bin/wine 25268 ktrace RET
Re: wine-0.9.37, ntdll.so loading fails, gdb output included
Jacob probably recognizes this: Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe Program received signal SIGSEGV, Segmentation fault. [Switching to process 31915, thread 0x8891a000] 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so (gdb) bt #0 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so #1 0x06a4e50a in _dl_opendir () from /usr/libexec/ld.so #2 0x06a4e938 in _dl_find_shlib () from /usr/libexec/ld.so #3 0x06a4ebe3 in _dl_load_shlib_hint () from /usr/libexec/ld.so #4 0x06a4ee5c in _dl_load_shlib () from /usr/libexec/ld.so #5 0x06a4c66d in dlopen () from /usr/libexec/ld.so #6 0x0a667d54 in wine_dlopen ( filename=0x7d4d014a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, error=0xcfbcaff0 \020°¼Ï, errorsize=1024) at loader.c:703 #7 0x0a667cb6 in wine_init (argc=16392, argv=0xcfbcafa0, error=0xcfbcaff0 \020°¼Ï, error_size=1024) at loader.c:655 #8 0x1c000f92 in main (argc=2, argv=0xcfbcb46c) at main.c:111 * Now, I want to know more about what ld.so is doing: (gdb) symbol /usr/libexec/ld.so Load new symbol table from /usr/libexec/ld.so? (y or n) y Reading symbols from /usr/libexec/ld.so...done. (gdb) run /emul/w/windows/sol.exe The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe Program received signal SIGSEGV, Segmentation fault. [Switching to process 17606, thread 0x7f924000] 0x084f9bec in ?? () from /usr/libexec/ld.so (gdb) bt #0 0x084f9bec in ?? () from /usr/libexec/ld.so #1 0x284f718c in ?? () from /usr/libexec/ld.so #2 0x0008 in ?? () #3 0xcfbf5ee8 in ?? () #4 0x084fa50a in ?? () from /usr/libexec/ld.so #5 0x4000 in dladdr () Cannot access memory at address 0x3fc8 * 0x3fc8 seem to be constant and appears at every try * Next...I compiled ld.so and loaded symbols from ld.so and util.o in /usr/src/libexec/ld.so/ (stupid move?) to get this: [Switching to process 31541, thread 0x831a3000] 0x04468bec in _dl_malloc () from /usr/libexec/ld.so (gdb) bt #0 0x04468bec in _dl_malloc () from /usr/libexec/ld.so #1 0x0446950a in _dl_opendir () from /usr/libexec/ld.so #2 0x04469938 in _dl_find_shlib () from /usr/libexec/ld.so #3 0x04469be3 in _dl_load_shlib_hint () from /usr/libexec/ld.so #4 0x04469e5c in _dl_load_shlib () from /usr/libexec/ld.so #5 0x0446766d in dlopen () from /usr/libexec/ld.so #6 0x0d731d54 in wine_dlopen ( filename=0x877dd14a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, error=0xcfbd5074 \224P½Ï, errorsize=1024) at loader.c:703 #7 0x0d731cb6 in wine_init (argc=16392, argv=0xcfbd5020, error=0xcfbd5074 \224P½Ï, error_size=1024) at loader.c:655 #8 0x1c000f92 in ?? () #9 0x0002 in __stack_smash_handler () #10 0xcfbd54f0 in ?? () #11 0xcfbd5074 in ?? () #12 0x0400 in ?? () #13 0x3c00 in ?? () #14 0x0020 in __stack_smash_handler () #15 0x0030 in _dl_strdup () Cannot access memory at address 0x20 * I'm lost here.! * util.c has a stack protector dummy... void __stack_smash_handler(char [], int); void __stack_smash_handler(char func[], int damaged) { _dl_exit(127); } * _dl_exit is essentially (an asm wrapper for syscall) _exit(127) * I don't know what to do now...except screaming for HLP. Jacob Meuser-2 wrote: On Sun, May 13, 2007 at 12:38:30AM +0200, Vortechz Anderson wrote: wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi Execution leads to segfault. (Note: Generic kernel _has_ SYSV MSG/SHM/SEMand I have not forgot sysctl machdep.userldt=1) I know there are some issues about wine's use of kernel threads on OpenBSD. I am clueless about the true problem though. If possible, I would like some comments on the ktrace kdump. looks familiar. before you even get to problems with threads, you have problems with wine wanting to control where things are located. I've got a port of 0.9.10 that gets a little farther than what you got here. loads libwine and libc, but cannot load ntdll.dll.so. try setting 'ac_cv_cflags__Wl___section_start__interp_0x7bf00400=no' in your environment before running configure and see if that gets you any farther. definitely not a trivial port. // V.A. 25268 ktrace RET ktrace 0 25268 ktrace CALL execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8) 25268 ktrace NAMI /bin/wine 25268 ktrace RET execve -1 errno 2 No such file or directory 25268 ktrace CALL execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8) 25268 ktrace NAMI /sbin/wine 25268 ktrace RET execve -1 errno 2 No such file or directory 25268 ktrace CALL execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8) 25268 ktrace NAMI /usr/bin/wine 25268 ktrace RET execve -1 errno 2 No such file or directory 25268 ktrace CALL execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8) 25268 ktrace NAMI /usr/sbin/wine 25268 ktrace RET execve -1 errno 2 No such file or directory 25268 ktrace
Re: wine-0.9.37, ntdll.so loading fails, gdb output included
If i remember correctly, wine uses $ORIGIN to load shared objects, but maybe i am wrong. Search for something like -Wl,-rpath,\''$$ORIGIN'\' and remove that, like we did for OpenOffice.
Re: wine-0.9.37, ntdll.so loading fails, gdb output included
Please email the list the updated port so that people who may be interested in helping you can reproduce the problem. On Saturday 19 May 2007 2:32:19 pm Vortechz wrote: Jacob probably recognizes this: Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe Program received signal SIGSEGV, Segmentation fault. [Switching to process 31915, thread 0x8891a000] 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so (gdb) bt #0 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so #1 0x06a4e50a in _dl_opendir () from /usr/libexec/ld.so #2 0x06a4e938 in _dl_find_shlib () from /usr/libexec/ld.so #3 0x06a4ebe3 in _dl_load_shlib_hint () from /usr/libexec/ld.so #4 0x06a4ee5c in _dl_load_shlib () from /usr/libexec/ld.so #5 0x06a4c66d in dlopen () from /usr/libexec/ld.so #6 0x0a667d54 in wine_dlopen ( filename=0x7d4d014a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, error=0xcfbcaff0 \020°¼Ï, errorsize=1024) at loader.c:703 #7 0x0a667cb6 in wine_init (argc=16392, argv=0xcfbcafa0, error=0xcfbcaff0 \020°¼Ï, error_size=1024) at loader.c:655 #8 0x1c000f92 in main (argc=2, argv=0xcfbcb46c) at main.c:111 * Now, I want to know more about what ld.so is doing: (gdb) symbol /usr/libexec/ld.so Load new symbol table from /usr/libexec/ld.so? (y or n) y Reading symbols from /usr/libexec/ld.so...done. (gdb) run /emul/w/windows/sol.exe The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe Program received signal SIGSEGV, Segmentation fault. [Switching to process 17606, thread 0x7f924000] 0x084f9bec in ?? () from /usr/libexec/ld.so (gdb) bt #0 0x084f9bec in ?? () from /usr/libexec/ld.so #1 0x284f718c in ?? () from /usr/libexec/ld.so #2 0x0008 in ?? () #3 0xcfbf5ee8 in ?? () #4 0x084fa50a in ?? () from /usr/libexec/ld.so #5 0x4000 in dladdr () Cannot access memory at address 0x3fc8 * 0x3fc8 seem to be constant and appears at every try * Next...I compiled ld.so and loaded symbols from ld.so and util.o in /usr/src/libexec/ld.so/ (stupid move?) to get this: [Switching to process 31541, thread 0x831a3000] 0x04468bec in _dl_malloc () from /usr/libexec/ld.so (gdb) bt #0 0x04468bec in _dl_malloc () from /usr/libexec/ld.so #1 0x0446950a in _dl_opendir () from /usr/libexec/ld.so #2 0x04469938 in _dl_find_shlib () from /usr/libexec/ld.so #3 0x04469be3 in _dl_load_shlib_hint () from /usr/libexec/ld.so #4 0x04469e5c in _dl_load_shlib () from /usr/libexec/ld.so #5 0x0446766d in dlopen () from /usr/libexec/ld.so #6 0x0d731d54 in wine_dlopen ( filename=0x877dd14a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, error=0xcfbd5074 \224P½Ï, errorsize=1024) at loader.c:703 #7 0x0d731cb6 in wine_init (argc=16392, argv=0xcfbd5020, error=0xcfbd5074 \224P½Ï, error_size=1024) at loader.c:655 #8 0x1c000f92 in ?? () #9 0x0002 in __stack_smash_handler () #10 0xcfbd54f0 in ?? () #11 0xcfbd5074 in ?? () #12 0x0400 in ?? () #13 0x3c00 in ?? () #14 0x0020 in __stack_smash_handler () #15 0x0030 in _dl_strdup () Cannot access memory at address 0x20 * I'm lost here.! * util.c has a stack protector dummy... void __stack_smash_handler(char [], int); void __stack_smash_handler(char func[], int damaged) { _dl_exit(127); } * _dl_exit is essentially (an asm wrapper for syscall) _exit(127) * I don't know what to do now...except screaming for HLP. Jacob Meuser-2 wrote: On Sun, May 13, 2007 at 12:38:30AM +0200, Vortechz Anderson wrote: wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi Execution leads to segfault. (Note: Generic kernel _has_ SYSV MSG/SHM/SEMand I have not forgot sysctl machdep.userldt=1) I know there are some issues about wine's use of kernel threads on OpenBSD. I am clueless about the true problem though. If possible, I would like some comments on the ktrace kdump. looks familiar. before you even get to problems with threads, you have problems with wine wanting to control where things are located. I've got a port of 0.9.10 that gets a little farther than what you got here. loads libwine and libc, but cannot load ntdll.dll.so. try setting 'ac_cv_cflags__Wl___section_start__interp_0x7bf00400=no' in your environment before running configure and see if that gets you any farther. definitely not a trivial port. // V.A. 25268 ktrace RET ktrace 0 25268 ktrace CALL execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8) 25268 ktrace NAMI /bin/wine 25268 ktrace RET execve -1 errno 2 No such file or directory 25268 ktrace CALL execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8) 25268 ktrace NAMI /sbin/wine 25268 ktrace RET execve -1 errno 2 No such file or directory 25268 ktrace CALL
Re: wine-0.9.37, ntdll.so loading fails, gdb output included
I would be interested in helping with this port Sam Fourman Jr. On 5/19/07, Kurt Miller [EMAIL PROTECTED] wrote: Please email the list the updated port so that people who may be interested in helping you can reproduce the problem. On Saturday 19 May 2007 2:32:19 pm Vortechz wrote: Jacob probably recognizes this: Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe Program received signal SIGSEGV, Segmentation fault. [Switching to process 31915, thread 0x8891a000] 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so (gdb) bt #0 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so #1 0x06a4e50a in _dl_opendir () from /usr/libexec/ld.so #2 0x06a4e938 in _dl_find_shlib () from /usr/libexec/ld.so #3 0x06a4ebe3 in _dl_load_shlib_hint () from /usr/libexec/ld.so #4 0x06a4ee5c in _dl_load_shlib () from /usr/libexec/ld.so #5 0x06a4c66d in dlopen () from /usr/libexec/ld.so #6 0x0a667d54 in wine_dlopen ( filename=0x7d4d014a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, error=0xcfbcaff0 \020°¼Ï, errorsize=1024) at loader.c:703 #7 0x0a667cb6 in wine_init (argc=16392, argv=0xcfbcafa0, error=0xcfbcaff0 \020°¼Ï, error_size=1024) at loader.c:655 #8 0x1c000f92 in main (argc=2, argv=0xcfbcb46c) at main.c:111 * Now, I want to know more about what ld.so is doing: (gdb) symbol /usr/libexec/ld.so Load new symbol table from /usr/libexec/ld.so? (y or n) y Reading symbols from /usr/libexec/ld.so...done. (gdb) run /emul/w/windows/sol.exe The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe Program received signal SIGSEGV, Segmentation fault. [Switching to process 17606, thread 0x7f924000] 0x084f9bec in ?? () from /usr/libexec/ld.so (gdb) bt #0 0x084f9bec in ?? () from /usr/libexec/ld.so #1 0x284f718c in ?? () from /usr/libexec/ld.so #2 0x0008 in ?? () #3 0xcfbf5ee8 in ?? () #4 0x084fa50a in ?? () from /usr/libexec/ld.so #5 0x4000 in dladdr () Cannot access memory at address 0x3fc8 * 0x3fc8 seem to be constant and appears at every try * Next...I compiled ld.so and loaded symbols from ld.so and util.o in /usr/src/libexec/ld.so/ (stupid move?) to get this: [Switching to process 31541, thread 0x831a3000] 0x04468bec in _dl_malloc () from /usr/libexec/ld.so (gdb) bt #0 0x04468bec in _dl_malloc () from /usr/libexec/ld.so #1 0x0446950a in _dl_opendir () from /usr/libexec/ld.so #2 0x04469938 in _dl_find_shlib () from /usr/libexec/ld.so #3 0x04469be3 in _dl_load_shlib_hint () from /usr/libexec/ld.so #4 0x04469e5c in _dl_load_shlib () from /usr/libexec/ld.so #5 0x0446766d in dlopen () from /usr/libexec/ld.so #6 0x0d731d54 in wine_dlopen ( filename=0x877dd14a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, error=0xcfbd5074 \224P½Ï, errorsize=1024) at loader.c:703 #7 0x0d731cb6 in wine_init (argc=16392, argv=0xcfbd5020, error=0xcfbd5074 \224P½Ï, error_size=1024) at loader.c:655 #8 0x1c000f92 in ?? () #9 0x0002 in __stack_smash_handler () #10 0xcfbd54f0 in ?? () #11 0xcfbd5074 in ?? () #12 0x0400 in ?? () #13 0x3c00 in ?? () #14 0x0020 in __stack_smash_handler () #15 0x0030 in _dl_strdup () Cannot access memory at address 0x20 * I'm lost here.! * util.c has a stack protector dummy... void __stack_smash_handler(char [], int); void __stack_smash_handler(char func[], int damaged) { _dl_exit(127); } * _dl_exit is essentially (an asm wrapper for syscall) _exit(127) * I don't know what to do now...except screaming for HLP. Jacob Meuser-2 wrote: On Sun, May 13, 2007 at 12:38:30AM +0200, Vortechz Anderson wrote: wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi Execution leads to segfault. (Note: Generic kernel _has_ SYSV MSG/SHM/SEMand I have not forgot sysctl machdep.userldt=1) I know there are some issues about wine's use of kernel threads on OpenBSD. I am clueless about the true problem though. If possible, I would like some comments on the ktrace kdump. looks familiar. before you even get to problems with threads, you have problems with wine wanting to control where things are located. I've got a port of 0.9.10 that gets a little farther than what you got here. loads libwine and libc, but cannot load ntdll.dll.so. try setting 'ac_cv_cflags__Wl___section_start__interp_0x7bf00400=no' in your environment before running configure and see if that gets you any farther. definitely not a trivial port. // V.A. 25268 ktrace RET ktrace 0 25268 ktrace CALL execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8) 25268 ktrace NAMI /bin/wine 25268 ktrace RET execve -1 errno 2 No such file or directory 25268 ktrace CALL execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8) 25268 ktrace NAMI /sbin/wine 25268 ktrace RET execve -1 errno 2 No