This is an old revision of the document!
User Software :: pyBDSM
External dependencies
The following packages are required in order to build pyBDSM:
- Python
- NumPy
- WCSLIB
- CFITSIO
- port3 – this is part of pyBDSM now
- minpack – this is part of pyBDSM now
The following packages are required in order to run pyBDSM:
- SciPy
- fortran stuff (to make faster)
- f2py
Installation procedure
- Check out source code from the LUS repository
- Run the bootstrap script in the build directory:
cd build ./bootstrap
- Build and install pyBDSM:
make bdsmThis will also go through the list of required packages and check whether they are installed.
Components to be build
_py2fbdsm– Write pyBDSM output to fBDSM format_pytesselate– Fortran implementation of Tesselation_cbdsm– Main python module to be imported
For David
- Does he want to write stuff (varybeta etc) in C and take it in thro boost ?
Preferred structure
. .. $LOFARSOFT
|-- release
| |-- bin .. $PATH
| |-- include
| `-- lib
| `-- python .. $PYTHONPATH
| |-- _cbdsm.so
| `-- bdsm .. Installation location of Python scripts
| |-- image.py
| |
`-- src
`-- BDSM
|-- doc .. Documentation directory
|-- implement .. contains source code compiled into library and executables
| |-- bdsm .. original Fortran BDSM
| |-- minpack
| |-- port3
| `-- pybdsm .. C-based Boost.Python wrappers
`-- scripts .. Python scripts
- fortran and c stuff to be compiled into libraries are in implement/pybdsm
- anaamika is in implement/bdsm
- port3 etc are in implement
- executables are in release/bin and other stuff are in release/lib, release/includes and release/lib/python (pythonpath)
- doc is in doc
Troubleshooting
>>> import bdsm Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/lars/usg/code/trunk/release/lib/python/bdsm/__init__.py", line 9, in <module> from preprocess import Op_preprocess File "/home/lars/usg/code/trunk/release/lib/python/bdsm/preprocess.py", line 8, in <module> import _cbdsm ImportError: dynamic module does not define init function (init_cbdsm)