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.

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 file by using ./configure DemoConsole; make; 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:

[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

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.

Clone this wiki locally