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: libpython.2.7.so.1.0
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
(ba)sh: export CIAO_LD_LIBRARY_PATH=$ASCDS_INSTALL/ots/lib:$ASCDS_INSTALL/lib (t)csh: setenv CIAO_LD_LIBRARY_PATH $ASCDS_INSTALL/ots/lib:$ASCDS_INSTALL/lib
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" and The following parameter: "foo,b,l,no,,,"Keyword"" has the following error(s): o Mode field "l" is invalid. and The following parameter: "foo,i,h,INDEF,INDEF,INDEF,"description"" 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:
On the CIAO libraries and executables in the following directories
$ASCDS_INSTALL/lib $ASCDS_INSTALL/bin $ASCDS_INSTALL/binexe $ASCDS_INSTALL/ots/lib $ASCDS_INSTALL/ots/bin
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 *
Disable SE Linux
(22 Dec 2016) Problem running SAS and CIAO in same terminal on OSX
OSX users cannot run CIAO-4.9 and XMM's SAS in the same terminal at the same time.
The version of cfitsio provided by SAS is incompatible with CIAO 4.9. Due to the changes in how CIAO is built and some quirks of OSX, this incompatible version will be used. Users will see an error message like this
% prism dyld: Library not loaded: @rpath/libcfitsio.dylib Referenced from: /Applications/ciao-4.9/binexe/prism Reason: Incompatible library version: prism requires version 5.0.0 or later, but libcfitsio.dylib provides version 2.0.0 Trace/BPT trap
This conflict does not occur on Linux.
At this time, users are encouraged to run CIAO and SAS tasks in separate terminals which are setup for those individual packages.
Users that absolutely require running both CIAO and SAS tasks in the same terminal may be able to modify their environment to change DYLD_LIBRARY_PATH to DYLD_FALLBACK_LIBRARY_PATH.
#bash $ export DYLD_FALLBACK_LIBRARY_PATH=$DYLD_LIBRARY_PATH $ unset DYLD_LIBRARY_PATH #tcsh % setenv DYLD_FALLBACK_LIBRARY_PATH $DYLD_LIBRARY_PATH % unsetenv DYLD_LIBRARY_PATH
While we can confirm this allows CIAO to work correctly, we cannot ensure that this will not cause conflicts with SAS tasks.
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 sherpa-1>
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.