Regression for OCaml introduced by rebase 4.4.4
Corinna Vinschen
corinna-cygwin@cygwin.com
Thu Feb 8 15:15:00 GMT 2018
On Feb 8 11:47, David Allsopp wrote:
> TL;DR flexlink-compiled DLLs (i.e. ocaml libraries) are broken by the
> 0x200000000 base address requirement added in rebase 4.4.4. Possible fixes
> for this at the bottom.
> [...]
> $ ocaml
> OCaml version 4.04.2
>
> # #load "unix.cma";;
> Cannot load required shared library dllunix.
> Reason: /usr/lib/ocaml/stublibs/dllunix.so: flexdll error: cannot relocate
> RELOC_REL32, target is too far: 0xfffffffc013d8b5f 0x13d8b5f.
>
> This is a known problem and fundamental limitation of flexdll (there is no
> RELOC_REL64 in COFF).
Apart from that, not only Cygwin DLLs but also the Windows system DLLs
are all loaded and relocated to the area beyond 0x1:80000000, so relocation
beyond the 32 bit address space is no generic problem in Windows. Why
isn't that possible in FlexDLL? I don't understand this. To me this looks
like a bug in FlexDLL, not a requirement to let certain DLLs slip through
the cracks.
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin/attachments/20180208/7ba0feb9/attachment.sig>
More information about the Cygwin
mailing list