Biggles troubleshooting
The original biggles installation package doesn't always find the PlotUtils or X11 libraries it depends on. You may not notice this during installation but only when importing biggles for the first time.
We have repackaged biggles to avoid these problems: download repackaged biggles
If you prefer using the original packet or still have problems with our version, follow these steps:
Install Plotutils
Ensure that libplot.so.2 is found in your $LD_LIBRARY_PATH environment variable. By default libplot.so.2 ends up in /usr/local/lib where the biggles module (see below) often doesn't find it.
If libplot.so.2 is indeed in /usr/local/lib, add the following line to your shell startup script
.bashrc or .zshrc or .zshenv:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
or .cshrc:
setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:/usr/local/lib"
Build biggles:
python setup.py build python setup.py install
2.1 Error 1 -- compilation fails on CentOS 4.1 or Suse
/usr/bin/ld: cannot find -lXaw
Cause: links in /usr/X11R6/lib missing
- Remedy:
install X11 development package (e.g. xorg-x11-devel on OpenSuse)
or:
ln -s /usr/X11R6/lib/libXaw.so.7.0 /usr/X11R6/lib/libXaw.so
the same link problem occured for libXmu, libXt, libSM, libICE, libXext and libX11
check libplot library:
cd build/lib.linux*/biggles/libplot ldd ldd libplot.so
if you get a result like this:
libplot.so.2 => not found libXaw.so.7 => /usr/X11R6/lib/libXaw.so.7 (0x4000f000) ...
libplot.so.2 is not found in your $LD_LIBRARY_PATH. See the above section how to fix that!
test biggles:
paste the following code snippet into a python interpreter:
import biggles, Numeric x = Numeric.arange(0,10,0.3) p = biggles.FramedPlot() p.add( biggles.Curve(x, Numeric.cos(x)) ) p.show()
4.1 Error 3 -- segmentatio fault:
If compilation works but you get errors like this when calling a script that uses Biggles:
libplot: ignoring request to create plotter of unknown type Segmentation fault (core dumped)
There are probably more links missing in /usr/X11R6/lib or lib64 that you will have to create.
4.2 Error 4 -- import fails:
Compilation works but you get a python error when you try importing biggles:
>>> import biggles Traceback (most recent call last): File "<stdin>", line 1, in ? File "/usr/local/lib/python2.4/site-packages/biggles/__init__.py", line 24, in ? from biggles import \ File "/usr/local/lib/python2.4/site-packages/biggles/biggles.py", line 28, in ? import libplot.renderer File "/usr/local/lib/python2.4/site-packages/biggles/libplot/renderer.py", line 22, in ? import libplot, math ImportError: libplot.so.2: cannot open shared object file: No such file or directory
Cause: Biskit looks for the dynamically linked libplot in /usr/lib
Remedy:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib