Installing lsst_sims failed inside docker


I was trying to install LSST software stack inside a docker container. I followed the instruction and recommendation from the ‘Catalogs and MAF’ post on confluence. An error occurred while installing lsst_sims with eups. The error message says the problem comes from doxygen. I used a prebuilt docker container “jupyter/scipy-notebook” created by Jupyter with a Ubuntu version of 16.04.3.

Here is the output:

jovyan@8fd5df19b220:~/lsst-stack$ eups distrib install lsst_sims -t sims
   [  1/99 ]  apr 1.5.2 (already installed)                              done.
   [  2/99 ]  cfitsio 3360.lsst4-1-gf398627 (already installed)          done.
  [  3/99 ]  doxygen 1.8.13.lsst1 ...

***** error: from /home/jovyan/lsst-stack/stack/miniconda3-4.3.21-10a4fa6/EupsBuildDir/Linux64/doxygen-1.8.13.lsst1/build.log:
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Looking for iconv_open
-- Looking for iconv_open - found
-- Performing Test ICONV_COMPILES
-- Performing Test ICONV_COMPILES - Failed
-- Could NOT find ICONV (missing:  ICONV_COMPILES)
CMake Error at cmake/FindIconv.cmake:130 (MESSAGE):
  Unable to determine iconv() signature
Call Stack (most recent call first):
  CMakeLists.txt:76 (find_package)

-- Configuring incomplete, errors occurred!
See also "/home/jovyan/lsst-stack/stack/miniconda3-4.3.21-10a4fa6/EupsBuildDir/Linux64/doxygen-1.8.13.lsst1/doxygen-1.8.13.lsst1/CMakeFiles/CMakeOutput.log".
See also "/home/jovyan/lsst-stack/stack/miniconda3-4.3.21-10a4fa6/EupsBuildDir/Linux64/doxygen-1.8.13.lsst1/doxygen-1.8.13.lsst1/CMakeFiles/CMakeError.log".
+ exit -3
eups distrib: Failed to build doxygen-1.8.13.lsst1.eupspkg: Command:
        source "/home/jovyan/lsst-stack/eups/2.1.4/bin/"; export EUPS_PATH="/home/jovyan/lsst-stack/stack/miniconda3-4.3.21-10a4fa6"; (/home/jovyan/lsst-stack/stack/miniconda3-4.3.21-10a4fa6/EupsBuildDir/Linux64/doxygen-1.8.13.lsst1/ >> /home/jovyan/lsst-stack/stack/miniconda3-4.3.21-10a4fa6/EupsBuildDir/Linux64/doxygen-1.8.13.lsst1/build.log 2>&1 4>/home/jovyan/lsst-stack/stack/miniconda3-4.3.21-10a4fa6/EupsBuildDir/Linux64/doxygen-1.8.13.lsst1/build.msg
exited with code 253

I am new to LSST software, could anyone help me with this issue.

Weixiang Yu


Could you please post the logs that are mentioned in that screen dump? They may contain helpful information.

Also, we do make available docker images that contain most of what you need for the sims already. See this thread for an explanation of how you can layer sims on top of an existing LSST docker image: LSST v14 Docker image.

@parejkoj didn’t you have this problem? Was this caused by the iconv package being installed in your miniconda tree?

I believe I did. That was this ticket:

@ywx649999311 On what day did you try this install? On November 27th, a new version of lsst_sims -t sims was released that should include John’s fix. If you tried your original build before that date, just try running eups distrib install lsst_sims -t sims and see if it works, now.

@danielsf I tried to install it yesterday. I have also checked the doxygen that is being built, which is already the latest, included the fix.

1.8.13.lsst1 should have already had the patch from DM-12086 in it.

The problem is solved, I build a new image instead of using ‘jupyter/scipy-notebook’. I think the problem might comes from the specific copy of ubuntu used by Jupyter.

Thanks everyone!

@ywx649999311 - when you say “I built a new image”…

  1. Have you build a new Juputer Notebook image?
  2. What did you start FROM in your Dockerfile?


I basically build from a clean Ubuntu 14.04. I did install Jupyter Server inside my image, so whenever I run a container, Jupyter server inside the container automatically starts.

I pushed to Docker Hub, if want to check it out, you pull it.