item2
Next»

contents

 

Introduction - 1

History - 2

Overview - 3

Advanced features - 4

Work in progress - 5

One possibility - 6

Conclusion - 7

 

References

Appendix 1 - blowfish

Appendix 2 - tkspline

4.6 - Solving Compile Problems

The intermediate C code generated by Critcl can be kept around by using the -keep flag. It is also possible to force a compile (i.e. disregarding the MD5 checksum) by using the -force flag:

   $ critcl -force -keep -pkg blowfish

In case of compile errors the source always remains in the ~/.critcl/platform  directory, but either way it won't be obvious because of the file names generated from the MD5 hash.  To find out what the last compile was doing, look at the end of the log file, which will have a name like

   v032.log

Critcl inserts a "#line" directive in the generated C source, so that an error on line three of cproc "foo" in script "bar.tcl" will be reported by gcc as occurring on "bar.tcl/foo", line 3.  No name is added to ccode sections, so with multiple sections, identifying the line is harder.

Critcl::cheaders can be used to set compile or linker flags, for example:

   $ critcl::cheaders -g

causes the output library to contain symbols and  the -DNDEBUG flag is not added to the gcc command line.

One area that will need to be addressed is the debugging of Critcl procedures - even if it is just defining a few procedures to do "puts-style" debugging in C.

see also

Critcl Home Page

Tclkit Home Page

Starkit Home Page

Wikit Home Page

Tclers' Wiki

Steve's Website

Jean-Claude's Website

Paper by S. Landers & J.C. Wippler, as presented at Tcl/Tk 2002 conference - see also original PDF.

Papers & Presentations