[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Almost finished porting gnat-4.6 to GNU/Hurd



Svante Signell writes:
> I have almost completed the cross-build and native-build of gnat-4.6.2
> for GNU/Hurd. All debs does now compile and I can create packages
> requiring gnat. One problem remains: Tuning the OS-interface routines.
> Currently libraries and binaries build, but the binaries fail with
> exception code: e.g.
> ./music123
> raised STORAGE_ERROR : s-intman.adb:139 explicit raise
>
> gdb music123 gives:
> Program received signal SIGSEGV, Segmentation fault.
> 0x01050b10 in
> system__task_primitives__operations__specific__initializeXnn@plt
>     () from /usr/lib/i386-gnu/libgnarl-4.6.so.1
> (gdb) bt
> #0  0x01050b10 in
> system__task_primitives__operations__specific__initializeXnn@plt ()
> from /usr/lib/i386-gnu/libgnarl-4.6.so.1
> #1  0x0105de9f in system.task_primitives.operations.initialize (
>     environment_task=0x8066b00) at s-taprop.adb:1420

This calls

pthread_key_create (ATCB_Key'Access, null);

at s-tpopsp-posix-foreign.adb:50; here ATCB_Key is an aliased global
variable declared at s-taprop-posix.adb:86, so its access value cannot
be null.  MAybe what is happening is that pthread_key_create is itself
an unresolved symbol?  What does

ldd music123

say?

What does

ldd /usr/lib/i386-gnu/libgnarl-4.6.so.1

say?

They should be both linked with libpthread, or Hurd's equivalent.

HTH

-- 
Ludovic Brenta.


Reply to: