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

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 Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

Attachment: signature.asc
Description: PGP signature

Reply via email to