Skip to the navigation links
Last modified: 7 November 2022


Bugs: Other Software Packages

The following is a list of known conflicts between CIAO and other software packages.

Table of Contents




ImportError: cannot import name MAXREPEAT

Linux users may see this MAXREPEAT error if they have setup for other software packages that provide their own version of Python.

This includes, but may not be limited to, Fermi's Science Tools.

The problem is due to those packages setting the LD_LIBRARY_PATH environment variable to point to an incompatible version of the Python shared library:


Due to the nature of the conflict, users should if at all possible setup CIAO in a separate terminal window from the interferring package.

CIAO users may be able to set the CIAO_LD_LIBRARY_PATH as follows


This should allow CIAO to run; however, this setup may not be compatible with those other packages.

Parameter file conflicts with HEAsoft

Both CIAO and FTOOLS use parameter files to store parameter values for tools, and provide tools for manipulating these files (e.g. plist, pset, punlearn; they have the same name in both systems). The location of the parameter files is taken from the $PFILES environment variables for CIAO and FTOOLS (or $UPARM if $PFILES does not exist).

Common errors are:

pget: could not get parameter "foo"


The following parameter:
has the following error(s):
  o Mode field "l" is invalid.


The following parameter:
has the following error(s):
o Problem converting minimum field "INDEF" to parameter type "i".
o Problem converting maximum field "INDEF" to parameter type "i".

We recommend that you start FTOOLS before CIAO to minimize problems.

More information on this problem is available in the CIAO and FTOOLS section of the Starting CIAO thread. Also refer to the related FAQ "The tool is failing because ")sval" has somehow shown up in the parameter value.".

Any system environment variable - LD_LIBRARY_PATH, DYLD_LIBRARY_PATH, PATH, etc. - is not defined when a user sets up a CIAO environment. Rather, the variable is defined as needed in the wrapper scripts that call individual tools, and then undefined when the wrapper script exits. This is fine for the majority of CIAO users.

For the advanced user who want to override some of the CIAO defaults when running CIAO tools, there are additional steps needed. To append libraries to the CIAO library search path, set LD_LIBRARY_PATH (or DYLD_LIBRARY_PATH on a Mac). To prepend a library to the search path, should set CIAO_LD_LIBRARY_PATH (or CIAO_DYLD_LIBRARY_PATH). The user cannot prepend a search to PATH.

cannot restore segment prot after reloc: Permission denied

This means SE Linux is enabled on the user's system. ciao-install will perform the following chcon commands; however if users installed CIAO by following the step-by-step instructions there may still be problems.

There are 2 things that will fix this; do either of the following, not both:

  1. On the CIAO libraries and executables in the following directories


    run the commands:

    $ su root
    # cd (to above CIAO directories)
    # chcon -c -v -R -u system_u -r object_r -t lib_t *
    # chcon -t texrel_shlib_t *
  2. Disable SE Linux


WARNING: failed to import sherpa.astro.xspec; XSPEC models will not be available

Users who try to run CIAO and FTOOLs on Linux machines in the same terminal may get an error like

unix% sherpa
Welcome to Sherpa: CXC's Modeling and Fitting Package

WARNING: failed to import sherpa.astro.xspec; XSPEC models will not be available


To work around the problem, users must set the following environment variable

  (tcsh) :  setenv CIAO_LD_LIBRARY_PATH $ASCDS_INSTALL/ots/lib
  (bash) :  export CIAO_LD_LIBRARY_PATH=$ASCDS_INSTALL/ots/lib

This should be done after the CIAO setup and before starting sherpa. This does not affect Mac OSX users.