Original bug ID: 1688
Reporter: administrator
Status: closed
Resolution: not a bug
Priority: normal
Severity: minor
Category: ~DO NOT USE (was: OCaml general)
Bug description
projet en ocaml
dont une archive *.tar.gz est joint à cet email.
Ocaml : v 3.06
OS : OpenBSD3.3
répertoires :
src/ sources OCaml
test/ fichier de test
src/main.ml est le fichier principal
compilation :
dans src/ :
$ gmake -f Makefile_ocaml.tpl
la commande pour lancer le programme est (à partir du
répertoire src) :
./a.out
Exemple :
la commade suivante ne fonctionne pour mon projet :
./a.out ../test/test6
la commade suivante ne fonctionne pas pour mon projet
:
./a.out ../test/test7
je voulais donc débugger la commande :
./a.out ../test/test7
j'ai effectuer les commandes suivantes :
$ ocamldebug ./a.out ../test/test7
Objective Caml Debugger version 3.06
(ocd) break @ Main 4
Loading program... done.
Breakpoint 1 at 136552 : file Main, line 7 column 3
(ocd) run
Time : 26606 - pc : 136552 - module Main
Breakpoint : 1
7 <|b|>let leng = Array.length arguments
in
(ocd) list
1 ( vim: set ft=ocaml : )
2 ( $Id: main.ml,v 1.9 2003/05/07 16:21:34 corentin
Exp $ )
3
4 let read_conf_file =
5 ( see module Arg. ... )
6 let arguments = Sys.argv in
7 <|b|>let leng = Array.length arguments
in
8 if leng <=1 then
9
(-------------------------------------------------------------------)
10 ( )
11 ( read the
configuration file from stdin )
12 ( )
13
(-------------------------------------------------------------------)
14 let lexbuf =
Lexing.from_channel stdin in
15 Parser.main
Lexer.token_rule lexbuf
16 else
17 let conf_file = Unix.openfile
arguments.(1) [Unix.O_RDWR] 0o700 in
18 let
conf_file_input_chanel = Unix.in_channel_of_descr
conf_file in
19 let lexbuf =
Lexing.from_channel conf_file_input_chanel in
20
let cam = Parser.main Lexer.token_rule lexbuf in
Uncaught exception: Sys_blocked_io
$
On remarque donc que, dans ocamldebug, la commande
"list" fait planter ocamldebug.
De même avec le fichier "test6" :
$ ocamldebug ./a.out ../test/test6
Objective Caml Debugger version 3.06
(ocd) break @ Main 4
Loading program... done.
Breakpoint 1 at 136552 : file Main, line 7 column 3
(ocd) run
Time : 26606 - pc : 136552 - module Main
Breakpoint : 1
7 <|b|>let leng = Array.length arguments
in
(ocd) list
1 ( vim: set ft=ocaml : )
2 ( $Id: main.ml,v 1.9 2003/05/07 16:21:34 corentin
Exp $ )
3
4 let read_conf_file =
5 ( see module Arg. ... )
6 let arguments = Sys.argv in
7 <|b|>let leng = Array.length arguments
in
8 if leng <=1 then
9
(-------------------------------------------------------------------)
10 ( )
11 ( read the
configuration file from stdin )
12 ( )
13
(-------------------------------------------------------------------)
14 let lexbuf =
Lexing.from_channel stdin in
15 Parser.main
Lexer.token_rule lexbuf
16 else
17 let conf_file = Unix.openfile
arguments.(1) [Unix.O_RDWR] 0o700 in
18 let
conf_file_input_chanel = Unix.in_channel_of_descr
conf_file in
19 let lexbuf =
Lexing.from_channel conf_file_input_chanel in
20
let cam = Parser.main Lexer.token_rule lexbuf in
Uncaught exception: Sys_blocked_io
$
Cela vient-il de mon code ? ou est-ce un problème de
ocamldebug ?
Merci de me mettre au courant de vos résultats.
Cordialement
Corentin Jechoux
Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en français !
Yahoo! Mail : http://fr.mail.yahoo.com
Original bug ID: 1688 Reporter: administrator Status: closed Resolution: not a bug Priority: normal Severity: minor Category: ~DO NOT USE (was: OCaml general)
Bug description
projet en ocaml dont une archive *.tar.gz est joint à cet email.
Ocaml : v 3.06
OS : OpenBSD3.3
répertoires : src/ sources OCaml test/ fichier de test
src/main.ml est le fichier principal
compilation : dans src/ : $ gmake -f Makefile_ocaml.tpl
la commande pour lancer le programme est (à partir du répertoire src) : ./a.out
Exemple :
la commade suivante ne fonctionne pour mon projet : ./a.out ../test/test6 la commade suivante ne fonctionne pas pour mon projet : ./a.out ../test/test7
je voulais donc débugger la commande : ./a.out ../test/test7
j'ai effectuer les commandes suivantes :
$ ocamldebug ./a.out ../test/test7 Objective Caml Debugger version 3.06
(ocd) break @ Main 4 Loading program... done. Breakpoint 1 at 136552 : file Main, line 7 column 3 (ocd) run Time : 26606 - pc : 136552 - module Main Breakpoint : 1 7 <|b|>let leng = Array.length arguments in (ocd) list 1 ( vim: set ft=ocaml : ) 2 ( $Id: main.ml,v 1.9 2003/05/07 16:21:34 corentin Exp $ ) 3 4 let read_conf_file = 5 ( see module Arg. ... ) 6 let arguments = Sys.argv in 7 <|b|>let leng = Array.length arguments in 8 if leng <=1 then 9
(-------------------------------------------------------------------) 10 (
) 11 ( read the configuration file from stdin ) 12 (
) 13
(-------------------------------------------------------------------) 14 let lexbuf = Lexing.from_channel stdin in 15 Parser.main Lexer.token_rule lexbuf 16 else 17 let conf_file = Unix.openfile arguments.(1) [Unix.O_RDWR] 0o700 in 18 let conf_file_input_chanel = Unix.in_channel_of_descr conf_file in 19 let lexbuf = Lexing.from_channel conf_file_input_chanel in 20
let cam = Parser.main Lexer.token_rule lexbuf in Uncaught exception: Sys_blocked_io $
On remarque donc que, dans ocamldebug, la commande "list" fait planter ocamldebug.
De même avec le fichier "test6" :
$ ocamldebug ./a.out ../test/test6 Objective Caml Debugger version 3.06
(ocd) break @ Main 4 Loading program... done. Breakpoint 1 at 136552 : file Main, line 7 column 3 (ocd) run Time : 26606 - pc : 136552 - module Main Breakpoint : 1 7 <|b|>let leng = Array.length arguments in (ocd) list 1 ( vim: set ft=ocaml : ) 2 ( $Id: main.ml,v 1.9 2003/05/07 16:21:34 corentin Exp $ ) 3 4 let read_conf_file = 5 ( see module Arg. ... ) 6 let arguments = Sys.argv in 7 <|b|>let leng = Array.length arguments in 8 if leng <=1 then 9
(-------------------------------------------------------------------) 10 (
) 11 ( read the configuration file from stdin ) 12 (
) 13
(-------------------------------------------------------------------) 14 let lexbuf = Lexing.from_channel stdin in 15 Parser.main Lexer.token_rule lexbuf 16 else 17 let conf_file = Unix.openfile arguments.(1) [Unix.O_RDWR] 0o700 in 18 let conf_file_input_chanel = Unix.in_channel_of_descr conf_file in 19 let lexbuf = Lexing.from_channel conf_file_input_chanel in 20
let cam = Parser.main Lexer.token_rule lexbuf in Uncaught exception: Sys_blocked_io $
Cela vient-il de mon code ? ou est-ce un problème de ocamldebug ?
Merci de me mettre au courant de vos résultats.
Cordialement
Corentin Jechoux
Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en français ! Yahoo! Mail : http://fr.mail.yahoo.com
‹óÂ>