I am trying to link kernel32 and ntdll libraries to my source code on SPARC Solaris 8.0. My executable does not exit. It gets stuck after spawning 4 threads. The gdb trace is as below:
Starting program: /export/home/mrugan/src/HACore/HaNuanceChannelComRCE/nuancetest.exe warning: Lowest section in /usr/lib/libintl.so.1 is .hash at 00000074 warning: Lowest section in /usr/lib/libw.so.1 is .hash at 00000074 [New LWP 1] [New LWP 2] [New LWP 3] [New LWP 4] ^C Program received signal SIGINT, Interrupt. 0xff19b390 in ___lwp_cond_wait () from /usr/lib/libc.so.1 (gdb) where #0 0xff19b390 in ___lwp_cond_wait () from /usr/lib/libc.so.1 #1 0xff192c08 in _lwp_cond_wait () from /usr/lib/libc.so.1 #2 0xfef8c2f0 in _lrw_wrlock () from /usr/lib/libthread.so.1 #3 0xff3bdacc in ?? () #4 0xff3c34f0 in ?? () #5 0xff3b29a0 in ?? () #6 0xff0863c8 in __DTOR_END__ () from /opt/wine/dlls/libkernel32.so #7 0xff02e140 in frame_dummy () from /opt/wine/dlls/libkernel32.so #8 0xff02cf80 in _init () from /opt/wine/dlls/libkernel32.so #9 0xff3bada0 in ?? () #10 0xff3baa18 in ?? () #11 0xff3c4da0 in ?? () #12 0xff3b2958 in ?? () (gdb) inf thr 8 Thread 3 0xfef8d948 in _reap_wait () from /usr/lib/libthread.so.1 7 Thread 2 (LWP 2) 0xff19ad50 in _signotifywait () from /usr/lib/libc.so.1 6 Thread 1 (LWP 1) 0xff19b390 in ___lwp_cond_wait () from /usr/lib/libc.so.1 * 5 LWP 1 0xff19b390 in ___lwp_cond_wait () from /usr/lib/libc.so.1 4 LWP 4 0xff19b390 in ___lwp_cond_wait () from /usr/lib/libc.so.1 3 LWP 3 0xff1988f4 in door_restart () from /usr/lib/libc.so.1 2 LWP 2 0xff19ad50 in _signotifywait () from /usr/lib/libc.so.1 * 1 LWP 1 0xff19b390 in ___lwp_cond_wait () from /usr/lib/libc.so.1 Note that I had to hit cntl-C to come out of thread message. I guess this is happening because kernel32 tries to use thread library. Is there any way I can make it use pthread or is there any other solution to this?
Any help will be greatly appreciated
Thanks Mrugan