Skip to content
Matthias Görges edited this page Feb 1, 2015 · 10 revisions

Log file location

By default LambdaNative sets the current-exception-handler to log:exception-handler. This results in all errors and additional desired logging information to be written to the applications log/ folder.

Advanced debugging

If the regular logfile doesn't show the error, the following procedure can be attempted: Configure the application in debug mode, using ./configure <appname> debug. Clean the cache, so that gambit-c is rebuild in with source lines, using make scrub. The following make; make install will take a while as the entire system is rebuild in debug mode. Logfiles will now contain the trace of the error to the line, where it occured.

Syntax error example

If DemoConsole is changed to include(sin 2.3 3.3), and invalid command for the (sin x) function it will compile without errors when using ./configure DemoConsole; make; However, when run with make install it will exit without an error. When followed up with cat ~/Desktop/DemoConsole.app/log/* the following errors are found:

[SYSTEM] 2015-01-28 09:58:15: Application DemoConsole built 2015-01-28 09:58:09
[SYSTEM] 2015-01-28 09:58:15: Git hash lambdanative: 6c06e2b,parts: 3f70dff
[ERROR] 2015-01-28 09:58:15: primordial: (sin 2.3 3.3): Wrong number of arguments passed to procedure
[ERROR] 2015-01-28 09:58:15: HALT

Undefined variable example using debug mode

If DemoConsole is changed to include(sin undef), whereby undef is not defined, it will throw a warning during compilation with ./configure DemoConsole debug; make;

 => creating gsc link..
 *** WARNING -- "undef" is not defined,
 ***            referenced in: ("/home/mg/documents/Programming/lambdanative-cache/linux/build/4285167665.c")
  => generating hook..

However, when run with make install it will cause a segmentation fault. When followed up with cat ~/Desktop/DemoConsole.app/log/* the following errors are found, which point to the location of the error:

[SYSTEM] 2015-02-01 00:24:08: Git hash lambdanative: 7443b12,parts: 4dc8857
[ERROR] 2015-02-01 00:24:08: primordial: (sin #!unbound): (Argument 1) NUMBER expected
[ERROR] 2015-02-01 00:24:08: trace: /home/mg/documents/Programming/lambdanative/apps/DemoConsole/main.scm line=40 col=1
[ERROR] 2015-02-01 00:24:08: HALT
Clone this wiki locally