unison-2.48 build fails with latest ocaml and flexdll (ping: Yaakov, Damien)

Andrew Schulman schulman.andrew@epa.gov
Sat Apr 30 11:54:00 GMT 2016

> A bald xpdf run failed with...
> Cygwin runtime failure: /usr/bin/xpdf.exe: Invalid relocation.  Offset 
> 0x2fb02bad9 at address 0x100494523 doesn't fit into 32 bits
> I rebased /usr/bin/cygXt-6.dll from 0x0003fb480000 down to 0x0000fb480000, i.e. 
> just turn the first 3 in the address to 0, and that allowed xpdf to run.

So I tried this, moving dllunix.so from 0x3e6440000 down to 0xe6440000:

$ rebase -i /usr/lib/ocaml/stublibs/dllunix.so
/usr/lib/ocaml/stublibs/dllunix.so        base 0x0003e6440000 size 0x0004b000

$ rebase -b 0xe6440000 /usr/lib/ocaml/stublibs/dllunix.so

$ rebase -i /usr/lib/ocaml/stublibs/dllunix.so
/usr/lib/ocaml/stublibs/dllunix.so        base 0x0000e6440000 size 0x0004b000

The build still failed, so I moved it down further, to 0x06440000. After that
the build still failed but on a different DLL,
/usr/lib/ocaml/stublibs/dllcamlstr.so.  So I rebased that one too, down to
0x06510000.  And finally the build succeeded!  (Well, it still failed, but in a
source code problem, not a DLL problem.)

So thank you! to everyone who helped on this. I'm just a poor package maintainer
and this stuff is a bit over my head.

Damien: OCaml is broken OOTB in x86_64. dllunix.so and dllcamlstr.so need to be
rebased before it will work.


More information about the Cygwin-apps mailing list