diff --git a/books/bookvol4.pamphlet b/books/bookvol4.pamphlet index 854dcf3..418aeb8 100644 --- a/books/bookvol4.pamphlet +++ b/books/bookvol4.pamphlet @@ -5241,6 +5241,33 @@ vector thus: Again we rerun the failing function and now tpd1 contains the domain vector for the domain CHAR: +\subsection{Operating system level I/O trace (strace)} +If the bug seems to happen during startup the only method of +debugging might be to use strace. To do this, replace the +\$AXIOM/bin/AXIOMsys binary with a shell script. You should: + +\begin{enumerate} +\item rename \$AXIOM/bin/AXIOMsys to \$AXIOM/bin/AXIOMsys.bin +\item create the shell script shown below +\item copy the shell script to the file \$AXIOM/bin/AXIOMsys so it will +execute in place of the normal Axiom image +\item chmod +x \$AXIOM/bin/AXIOMsys to make the script executable +\item start axiom normally +\end{enumerate} + +The script reads: +\begin{verbatim} +#!/bin/sh +exec strace -o /tmp/str.$$ /research/test/mnt/ubuntu/bin/AXIOMsys.bin "$@" | tee /tmp/tee.$$ +\end{verbatim} + +The script will create 2 files in the tmp directory, "str.NNNNN" and +"tee.NNNNN" where NNNNN is the process id assigned to axiom at runtime. + +The tee.NNNNN file contains the console output you saw. +The str.NNNNN contains the output of strace which is a list of all of +the system calls and their result. + \section{How to make graphs in algebra books} dot -Tps books/ps/domain.ps diff --git a/changelog b/changelog index a907e36..5f5033c 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,5 @@ +20101127 tpd src/axiom-website/patches.html 20101127.01.tpd.patch +20101127 tpd books/bookvol4 add debugging technique 20101126 tpd src/axiom-website/patches.html 20101126.01.tpd.patch 20101126 tpd src/interp/postprop.lisp treeshake compiler 20101126 tpd src/interp/compiler.lisp treeshake compiler diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html index 76248d1..3708f26 100644 --- a/src/axiom-website/patches.html +++ b/src/axiom-website/patches.html @@ -3276,5 +3276,7 @@ books/bookvol9 treeshake compiler
books/bookvol9 treeshake compiler
20101126.01.tpd.patch books/bookvol9 treeshake compiler
+20101127.01.tpd.patch +books/bookvol4 add debugging technique