flexdll error: cannot relocate RELOC_REL32
Cao Qinxiang
caoqinxiang@gmail.com
Mon Mar 2 13:19:00 GMT 2020
Dear Brian,
Thank you for you reply.
But it does not solve my problem. When I run "rebase-trigger full", I get
the following message:
-----
Note: _autorebase will do a full rebase the next time setup is run.
-----
If I check /var/cache/rebase/fullrebase at this time, it contains the
follow information:
-----
# _autorebase will do a rebuild of the rebase database if this file
# exists and then rename it to fullrebase.done
-----
Then I closed Cygwin and checked Task Manager Details (found no exe in
cygwin folder). Then I run Cygwin setup. But after I rerun Cygwin again, I
get the same error message about dllunix.so. BTW, in
/var/cache/rebase/rebase_all, I found nothing related to dllunix.so. Is a
the reason? I put my /var/cache/rebase/ folder in this git repo "
https://github.com/QinxiangCao/CygwinDebug" and hope it can help detect
the problem.
Thank you very much!
Best regards,
Qinxiang Cao
Shanghai Jiao Tong University, John Hopcroft Center
Room 1110-2, SJTUSE Building
800 Dongchuan Road, Shanghai, China, 200240
On Mon, Mar 2, 2020 at 3:58 PM Brian Inglis <Brian.Inglis@shaw.ca> wrote:
> On 2020-03-01 11:35, Cao Qinxiang wrote:
> > Dear Cygwin development team and Cygwin experts,
> >
> > I use Cygwin-64 on windows and get a fork problem when I try to manually
> > install menhir package.
> >
> > ----------------
> > 0 [main] ocamlrun 1615 child_info_fork::abort: address space needed
> by
> > 'dllunix.so' (0x400000) is already occupied
> > /usr/bin/ocamldep.opt -modules menhir.ml > menhir.ml.depends
> > 0 [main] ocamlrun 1616 child_info_fork::abort: address space needed
> > by 'dllunix.so' (0x400000) is already occupied
> > /cygdrive/g/Cygwin/menhir-20190924/src/_stage1/myocamlbuild: "fork"
> failed:
> > Resource temporarily unavailable
> > ----------------
> >
> > I follow online suggestion to run "/usr/bin/rebaseall -v" using ash.exe.
> > However, I get another program after that:
> >
> >
> > ----------------
> > Fatal error: cannot load shared library dllunix
> > Reason: flexdll error: cannot relocate RELOC_REL32, target is too far:
> > 0xfffffffc02088b5f 0x2088b5f
> > ----------------
> >
> > I searched solutions for this new problem. Most solutions are to manually
> > rebase dllunix to a lower number like 0x06440000. However, I cannot
> > do that. Here is what I get in Cygwin:
> >
> > ----------------
> > $ rebase -b 0x06440000 /usr/lib/ocaml/stublibs/dllunix.so
> > rebase: Invalid Baseaddress 0x06440000, must be > 0x200000000
> > ----------------
> >
> > So, what should I do to this problem?
> >
> > Also, if I did not use "/usr/bin/rebaseall -v" using ash.exe, but follow
> > FAQ's suggestion (run "rebase-trigger fullrebase" in Cygwin), then I
> cannot
> > solve the fork problem and still get
> > ----------------
> > 0 [main] ocamlrun 1615 child_info_fork::abort: address space needed
> by
> > 'dllunix.so' (0x400000) is already occupied
> > /usr/bin/ocamldep.opt -modules menhir.ml > menhir.ml.depends
> > 0 [main] ocamlrun 1616 child_info_fork::abort: address space needed
> > by 'dllunix.so' (0x400000) is already occupied
> > /cygdrive/g/Cygwin/menhir-20190924/src/_stage1/myocamlbuild: "fork"
> failed:
> > Resource temporarily unavailable
> > ----------------
>
> Run rebase-trigger full then shut down *ALL* Cygwin processes: check Task
> Manager Details tab Image path name column for process paths under Cygwin
> root
> and kill.
> If rebase-trigger full fails, create /var/cache/rebase/fullrebase.
> Then download and run Cygwin setup and let all the postinstall scripts
> complete.
>
> --
> Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada
>
> This email may be disturbing to some readers as it contains
> too much technical detail. Reader discretion is advised.
>
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
More information about the Cygwin
mailing list