2011-06-02 9 views
7

मेरे पास एक साधारण ओकम्बुबिल्ड प्रोजेक्ट है जो सिंटैक्स एक्सटेंशन सहित बैटरियों का उपयोग करता है।बैक्रीज़ शामिल प्रोजेक्ट के साथ ओकमेल्डबग का उपयोग कैसे किया जा सकता है?

_tags:

<*>: pkg_batteries,pkg_threads,pkg_batteries.syntax,syntax_camlp4o 

something.ml:

open Batteries 
… 
let() = … 

यह साथ डिबगिंग के लिए बनाया गया है:

$ ocamlbuild something.d.byte 
$ ocamldebug something.d.byte 

ocamldebug में print आदेश का उपयोग करने का प्रयास है, तथापि, निम्नलिखित देता है त्रुटि:

(ocd) print x 
Cannot find module Batteries. 

यह केवल तब होता है जब एक दायरे में डिबगिंग जहां Batteriesopen एड है लगता है।

इस त्रुटि का कारण क्या है? आसपास काम करना कैसे संभव है?

उत्तर

8

आपको बैटरी को डीबगर में उपलब्ध करना होगा; dir कमांड और -I कमांड लाइन विकल्प इसे सक्षम करते हैं। दुर्भाग्यवश, यह कठिन होना चाहिए क्योंकि ocamlfindocamldebug का समर्थन नहीं करता है। लेकिन आप यह कर सकते हैं:

$ ocamldebug `ocamlfind query -recursive -i-format batteries` -I _build something.d.byte 

यह प्रदान करने के लिए प्रासंगिक मॉड्यूल का पता लगाने का पथ शामिल ocamldebug को -I विकल्पों में से एक दृश्य पारित करेंगे।

+0

दरअसल, मैंने पहली चीज 'ओकमल्डबग' की जांच करने की क्षमता के लिए 'ओकम्मलफिंड' की जांच की थी और कम हो गया था। मुझे लगा कि इन लाइनों के साथ कुछ था। धन्यवाद। एक बार मेरे पास पुष्टि होगी, और स्वीकार करेगा। – jrk

संबंधित मुद्दे

 संबंधित मुद्दे