Source
Source | Size | Last Modified | |
---|---|---|---|
docs | |||
include/casacore/casa | |||
qt5 | |||
scripts | |||
src | |||
.gitmodules | 104 B | ||
.readthedocs.yaml | 575 B | ||
casa-sourceURL: https://open-bitbucket.nrao.edu/scm/casa/casa6.git @ 6e66f2f57fd | |||
casalogger.pro | 10.45 KB | ||
qt4-macos.yml | 3.08 KB | ||
README.md | 4.64 KB |
CASAlogger
CASA logger is distributed as part of CASA. This repository makes it possible to build the CASA plotms without building the rest of CASA. CASAlogger will become the default logger application for CASA distributions.
Check Out
You should checkout CASAplotms with:
-bash-4.2$ git clone --recursive https://open-bitbucket.nrao.edu/scm/casa/CASAlogger.git
Building
PlotMS required Qt 4.8 or later. Check which version of Qt is available using which
:
-bash-4.2$ which qmake
/usr/lib64/qt-3.3/bin/qmake
-bash-4.2$ PATH=/usr/lib64/qt4/bin:$PATH
-bash-4.2$ which qmake
/usr/lib64/qt4/bin/qmake
-bash-4.2$
In addition, the casatools
Python module is required for building and the casatasks
Python module is required for starting PlotMS from the python prompt. You can check by attempting to get help from the casatools
module:
-bash-4.2$ python3 -m casatools --help
/opt/rh/rh-python36/root/usr/bin/python3: No module named casatools
-bash-4.2$ PYTHONPATH=../casatools/build/lib.linux-x86_64-3.6 python3 -m casatools --help
--compiler-cc path to C compiler used to build casatools
--compiler-cxx path to C++ compiler used to build casatools
--compiler-xml path to compiler used to generate bindings from XML
--grpc-compile flags to compile C++ source files
--grpc-link flags to use to link gRPC C++ applications
--grpc-libpath path to gRPC C++ libraries
--grpc-protocpp path to C++ protoc compiler
--grpc-protopy path to Python protoc compiler
--proto-registrar path to registrar protobuf spec
--proto-shutdown path to shutdown protobuf spec
--proto-ping path to ping protobuf spec
-bash-4.2$
If you had to set PYTHONPATH
environment variable, you need to also set it similarily when running qmake in the following You should be able to build CASA plotms on both OSX and Linux with:
-bash-4.2$ PYTHONPATH=../casatools/build/lib.linux-x86_64-3.6 qmake
-bash-4.2$ make
This process should result in the creation of an AppImage which can be run directly:
-bash-4.2$ ls build/bin.3.10.0-1062.el7.x86_64/casalogger-x86_64.AppImage
build/bin.3.10.0-1062.el7.x86_64/casalogger-x86_64.AppImage
-bash-4.2$ build/bin.3.10.0-1062.el7.x86_64/casaplotms-x86_64.AppImage
This AppImage could be distributed for use as is by just copying it to any desired location. It is also possible to build a Python binding for casalogger. The casatools
module is also required for this step:
-bash-4.2$ PYTHONPATH=../casatools/build/lib.linux-x86_64-3.6 make py
This should result in a Python module which could be added to PYTHONPATH
directly and a PyPI wheel that can be installed with pip:
-bash-4.2$ ls build/python.3.10.0-1062.el7.x86_64/casalogger
__bin__ __init__.py casalogger.py private __pycache__
-bash-4.2$ ls build/python.3.10.0-1160.31.1.el7.x86_64/dist
casalogger-1.0.0+dirty-py3-none-linux_x86_64.whl
-bash-4.2$
If the casalogger
wheel is installed, it should install its dependencies. These include:
- casatools -- CASA tools and configuration
- casatasks -- CASA tasks
- grpcio -- gRPC binding for Python
- protobuf -- transport layer for gRPC
If casalogger
is loaded directly, all of these modules must be available in your PYTHONPATH
. If you have the CASA development environment, these packages should be installed with as part of the casa-toolset-3
RPM.
Building MacOS
This build depends on a local installation of anaconda. You can find installation instructions at https://www.anaconda.com/products/individual. Once you have a working installation you can create the custom conda
environment using the .yml
file found in the base directory.
conda env create -f qt4-macos.yml
Before starting the install activate the envrionment using
source <anaconda_install_directory>/bin/activate
conda activate qt4-macos
You will need to add the qt4 directory to $PATH
as well as setting the $CC
and $CXX
variables.
export PATH="<anaconda_install_directory>/envs/qt4-macos/qt4/bin:$PATH"
export CC=/usr/bin/cc
export CXX=/usr/bin/c++
To make the binary
qmake QMAKE_CXX=clang++ QMAKE_LINK=clang++
make
This should create casalogger.app
in casalogger/build/bin.19.6.0/casalogger.app. The logger can be run using
LD_LIBRARY_PATH="<anaconda_install_directory>/envs/qt4-macos/qt4/lib:<anaconda_install_directory>/envs/qt4-macos/lib:$LD_LIBRARY_PATH" casalogger/build/bin.19.6.0/casalogger.app/Contents/MacOS/casalogger
The python module can be built using
make py