Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0005094OCamlOCaml generalpublic2010-07-06 18:002011-05-17 16:51
Reporteraostruszka 
Assigned To 
PrioritynormalSeverityblockReproducibilityhave not tried
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version3.11.2 
Target VersionFixed in Version 
Summary0005094: Unable to debug under Cygwin (with flexdll)
DescriptionHello Team,

I have recently upgraded to 3.11.2 and would like to debug but it seems that it is impossible for Cygwin+flexdll setup (or at least I don't know how).
Configuration is:
- cygwin 1.7
- ocaml 3.11.2 (compiled with no Tk - otherwise the build was failing)
- flexdll 0.23 installed at C:\Program Files\flexdll

Exemplary output:

$ cat test.ml
print_endline "Hello world!"
$ ocamlc -g -o a test.ml
$ ./a
Hello world!
$ ocamldebug ./a
        Objective Caml Debugger version 3.11.2

(ocd) run
Loading program... Cannot find FLEXDLL_RELOCATE
Cannot find FLEXDLL_RELOCATE
     12 [main] ocamlrun 5132 C:\cygwin\usr\local\bin\ocamlrun.exe: *** fatal error - unable to remap \\?\C:\cygwin\usr\local\lib\ocaml\stublibs\dllunix.so to same address as parent: 0x665C0000 != 0x0
     11 [main] ocamldebug 1752 fork: child 5132 - died waiting for dll loading, errno 11
Unix error : 'fork' failed : Resource temporarily unavailable
(ocd)

Best regards
Andrzej
TagsNo tags attached.
Attached Files

- Relationships

-  Notes
(0005653)
frisch (developer)
2010-09-07 19:28

Yasutaka Atarashi found the cause for bad interaction between flexdll and Cygwin's fork (namely, flexdll used putenv instead of setenv). This is fixed in the current development version of flexdll and it might solve the issue reported here. Any feedback on that would be appreciated.
(0005695)
aostruszka (reporter)
2010-10-28 00:52

I have just upgraded to 0.25 flexdll and builded new 3.12.0. Unfortunately the result is the same.
(0005696)
aostruszka (reporter)
2010-10-28 01:46

One additional note/question about flexdll (under Cygwin). Is the -custom flag not supposed to work when ocaml has been compiled with support for flexdll?
Any compilation with -custom that I've tried fails - for example this is what I get when compiling findlib with new toolchain

-8<---compiling findlib----
ocamlc -custom -o ocamlfind.exe findlib.cma unix.cma \
                   ocaml_args.cmo frontend.cmo
realgcc.exe: /tmp/camlprime47ca9.c: No such file or directory
realgcc.exe: no input files
** Fatal error: Error while compiling
File "_none_", line 1, characters 0-1:
Error: Error while building custom runtime system
make[1]: *** [ocamlfind] Error 2
-8<---compiling findlib----
(0005744)
atarashi (reporter)
2010-12-20 16:02

At that time "the current development version" mentioned by frisch didn't mean the release version 0.25 but subversion repository. However, now my patch is included in the release version 0.26 according to ChangeLog. So, please try again.

In my environment (patched flexdll and OCaml 3.12.0 on Cygwin 1.7.7), compiling findlib, including quoted command line, does not cause the error.

What is "realgcc.exe"? Do you have custom configuration for gcc?
(0005903)
doligez (administrator)
2011-05-17 16:51

Flexdll version 0.26 fixes this problem.

- Issue History
Date Modified Username Field Change
2010-07-06 18:00 aostruszka New Issue
2010-09-07 19:28 frisch Note Added: 0005653
2010-10-28 00:52 aostruszka Note Added: 0005695
2010-10-28 01:46 aostruszka Note Added: 0005696
2010-12-20 16:02 atarashi Note Added: 0005744
2011-05-17 16:51 doligez Note Added: 0005903
2011-05-17 16:51 doligez Status new => closed
2011-05-17 16:51 doligez Resolution open => fixed


Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker