How to enable debug prints
Duktape 1.x
- Enable
DUK_OPT_DEBUG/DUK_USE_DEBUG - Enable
DUK_OPT_DPRINT/DUK_USE_DPRINTfor minimal logs - Enable also
DUK_OPT_DDPRINT/DUK_USE_DDPRINTfor verbose logs - Enable also
DUK_OPT_DDDPRINT/DUK_USE_DDDPRINTfor very verbose logs
Logs will be written to stderr.
Duktape 2.x
- Enable
DUK_USE_DEBUG - Define
DUK_USE_DEBUG_LEVEL=<n>wherenis 0 for minimal logs, 1 for verbose logs, and 2 for very verbose logs - Define
DUK_USE_DEBUG_WRITE(level,file,line,func,msg)to write out log entries; this allows you to fully control where debug logs should go
Example of DUK_USE_DEBUG_WRITE in manually edited duk_config.h:
#define DUK_USE_DEBUG_WRITE(level,file,line,func,msg) do { \
fprintf(stderr, "D%ld %s:%d (%s): %s\n", \
(long) (level), (file), (long) (line), (func), (msg));
} while (0)Same function as an argument to tools/configure.py:
'-DDUK_USE_DEBUG_WRITE(level,file,line,func,msg)=do {fprintf(stderr, "D%ld %s:%ld (%s): %s\n", (long) (level), (file), (long) (line), (func), (msg));} while(0)'