wiki:Debugging

Installation Issues and Debugging

Introduction

Starting with LSL version 0.4.5, a installation and debugging script is included in the root directory of the LSL release. This script, gatherDebugging.py, probes the current Python installation to:

  • Identify the version of Python that is being used,
  • Check if the required Python modules are installed and usable,
  • Check if the required C libraries are installed (Linux only),
  • List detailed information about the Numpy installation and its linking, and
  • List detailed information about the LSL installation and its linking.

For installation problems, the script helps identify missing modules or modules that do not import without error. For debugging, the script help identify linking problem (32 vs. 64-bit Numpy installations) and version problems.

Typical Output - Linux

A typical output of the script should look like:

Executable path: /usr/bin/python
Platform: linux2
Version: 2.6.5 (r265:79063, Apr 16 2010, 13:57:41) 
[GCC 4.4.3]
API: 1013
Bits: 64bit
Linkage: ELF
 
Numpy:  version 1.3.0
Scipy:  version 0.7.0
Pyfits:  version 2.4.0
Ephem:  version 3.7.4.1
Aipy:  version unknown
 
libatlas: found in /usr/lib
libcblas: found in /usr/lib
libfftw3: found in /usr/lib
libnova: found in /usr/local/lib
libgdbm: found in /usr/lib
 
Numpy Path: /usr/lib/python2.6/dist-packages/numpy
Numpy Version: 1.3.0
Numpy Linkage: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped
 
LSL Path: /usr/local/lib/python2.6/dist-packages/lsl-0.5.dev_r654-py2.6-linux-x86_64.egg/lsl
LSL Base Version: 0.5
LSL Linkage: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped

(from the fornax build system).

Typical Output - Mac OS X

Executable path: /opt/local/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python
Platform: darwin
Version: 2.6.7 (r267:88850, Nov  5 2011, 20:04:43) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)]
API: 1013
Bits: 64bit
Linkage: 
 
Numpy:  version 1.6.1
Scipy:  version 0.9.0
Pyfits:  version 2.3.1
Ephem:  version 3.7.4.1
Aipy:  version unknown
 
Numpy Path: /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/numpy
Numpy Version: 1.6.1
Numpy Linkage: Mach-O 64-bit bundle x86_64
 
LSL Path: /Users/jayce/.local/lib/python2.6/site-packages/lsl-0.4.2-py2.6-macosx-10.6-x86_64.egg/lsl
LSL Base Version: 0.4
LSL Linkage: Mach-O 64-bit bundle x86_64

(from the fornax-mac build system).

Usage with Older LSL Version

The debugging script should be usable with all LSL 0.4.x releases prior to 0.4.5. To get a copy of the the script via subversion:

svn export http://fornax.phys.unm.edu/lwa/subversion/branches/lsl-0.4.x/gatherDebugging.py