> 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. Andrew