Download

CPL Title Graphic

Current CPL Release

The following table provides the download links for the latest offical release of the CPL source packages, the documentation, and the Esorex tool. As a convenience the source packages of the third-party libraries which were used to verify this CPL release are also available from the table below.

Previous CPL releases are available here.

Filename Description MD5
cpl-7.1.tar.gz CPL source code distribution
Note: requires CFITSIO 3.350 or later
a27e0f01bfbba970a38beb3c9cd4e0ba
cpl-user-manual_6.0.pdf CPL User Manual (outdated!)
cpl-reference-manual-7.1.pdf CPL Reference Manual (PDF)
The on-line version of the manual is available here.
esorex-3.13.1.tar.gz ESO Recipe Execution tool
Note: for CPL 6.5 or later use esorex 3.11 or newer.
f96a01493bec036112de524921f90802
cfitsio3360.tar.gz CFITSIO library from NASA, version 3.360 610f830a17fd78cf80e47e96254b5e5c
wcslib-4.24.tar.bz2 WCSLIB library of M. Calabretta, version 4.24 10f44010cd4a47b63a5180a215386ab9
fftw-3.3.4.tar.gz FFTW library, version 3.3.4 2edab8c06b24feeb3b82bbb3ebf3e7b3

Note: The integrity of the downloaded packages may be verified using the MD5 signatures from the table (see here for details).

Changes in CPL 7.1

CPL 7.1 is primarily a maintenance release and corrects a number of issues which were reported on the previous CPL release. In addition to that a few new interfaces were introduced in the CPL vector and matrix class which were requested by ESO instrument projects. for details please please refer to the NEWS distributed as part of the source package.

In addition to the changes of the code, there were also changes to the build system. Noteworthy changes are:

  • The third party libraries FFTW and WCSLIB are required by default, i.e. CPL will build only if these dependencies are in place, unless they are explicitly disabled.
  • The static version of the dependencies is no longer needed. Also, the presence of the library dependencies is verified on the basis of a successful execution of the linker rather than searching for the file.
  • The WCSLIB related command line options of the configure script have been renamed to match the library name.

Previous CPL Releases

The last releases of the CPL source packages can be accessed through the links in the table. In addition the third-party library packages which were used and tested with the individual releases are also available.


System requirements

The CPL is supported on the VLT target platforms running the following operating systems:

  • CentOS 7 (64bit)
At this stage, only these operating system versions are officially supported!

However, it is intended that the CPL builds also on other flavors of Linux and Unix systems, and it is known that the CPL has been successfully built on recent Linux distributions (Fedora, OpenSUSE, Debian Ubuntu, Scientific Linux and others), as well as on macOS platforms.

The following tools are needed to build the CPL from the source distribution:

  • GNU C/C++ compiler (version 4.4 or newer)
  • GNU make utility
  • GNU tar and gzip utilities.
  • Java Development Kit version 1.6 or newer (optional, only needed if Gasgano support is required)

Third-party libraries used in CPL

In addition to the development tools for building the CPL, it depends on a small number of external library packages:

  • CFITSIO
  • FFTW
  • WCSLIB
The recommended versions of these packages are also available from here.

Since CPL uses CFITSIO to access FITS files, it requires an appropriate CFITSIO installation to be available on the target system.
CPL also delegates some specific functionality, namely Fourier transforms and world coordinate system transformations to dedicated, specialized libraries. As of CPL 7.1 these dependencies are, by default, required and must be present to build CPL with the default configuration.
In case this functionality is not needed, or if FFTW and/or WCSLIB are not available, CPL can be built without these dependencies, but it must be explicitly disabled using the respective configuration options.
Building CPL without FFTW and/or WCSLIB is not recommended, since Fourier transforms an world coordinate system handling are then not available in CPL!

Workarounds for macOS users:

The following list provides hints to work around some known issues on macOS platforms:

  • Compilation error on Mac (OS X 10.8, or newer): version 6.1.1 of CPL cannot be built with the default C compiler (clang), because of unsupported C99 features. The current CPL release requires a full GCC installation which may be obtained from MacPorts for instance.
    This issue is fixed in CPL version 6.2!
  • Compilation error because of not finding the javah executable: to avoid this the environment variable JAVA_HOME which points to the JDK installation should be set to:
    JAVA_HOME=/System/Library/Frameworks/JavaVM.framework before the configure script is executed. If this does not succeed try the following setting: JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home

Installing and using the CPL

Please refer to the README file in the CPL distribution for details about how to install and use the software. A detailed description of the library is provided in the CPL User Manual (see the link in the list of "downloads" above). Additional documentation is available from the CPL Documentation page.

Checking the Package Integrity

The integrity of the downloaded packages may be verified using the MD5 files which are available from the current release download table. They contain the MD5 fingerprint of the corresponding package. To verify the package, get the MD5 file by saving the MD5 sum link, put it into the same directory as the package, and execute the command: md5sum -c <md5file>