Dockerfile make error code 2

1.3k views Asked by At

I am trying to install tools onto ubuntu 14.04 so that it can be distributed amongst others but I encountered some problems with one of them. This is my dockerfile:

FROM ubuntu:14.04
MAINTAINER reginsmal <reginsmal.ca>

# update with new repo
RUN sudo apt-get -y update

# installation tools require java JRE, git, 
# mercurial, and ant for installation
RUN apt-get install default-jre -y && apt-get install openjdk-7-jdk -y && apt-get install mercurial -y && apt-get install git -y && apt-get install ant -y && apt-get install cmake -y && apt-get install libgtest-dev -y && apt-get install g++ -y && apt-get install wget -y

ENV JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

# installation for texada
# from the online site

# compile and setup google test:
WORKDIR /usr/src/gtest
RUN cmake CMakeLists.txt
RUN make
RUN cp *.a /usr/lib

# install boost:
RUN apt-get install libboost-all-dev -y

# install spot:
WORKDIR ~/
RUN wget http://spot.lip6.fr/dl/spot-1.2.5.tar.gz
RUN tar -zxvf spot-1.2.5.tar.gz
WORKDIR spot-1.2.5/
RUN ./configure
RUN make
RUN make check
RUN make install

# grab texada:
WORKDIR ~/
RUN hg clone https://[email protected]/bestchai/texada
WORKDIR texada

# setup environment to run texada (you'll want to add this line to your .bashrc or similar):
ENV TEXADA_HOME=$HOME/texada

# set up the uservars.mk file based on the example that's there:
RUN cp uservars.mk.example uservars.mk

# only change the SPOT_INCL location since all other location
# vars are available system-wide and need not be changed:
RUN sed -i "/^SPOT_INCL:=/c\SPOT_INCL:=${PWD%/*}/spot-1.2.5/src/" uservars.mk

# build texada and texadatest
RUN make
RUN ./texadatest

I get errors when setting TEXADA_HOME=$HOME/texada. When I set

ENV TEXADA_HOME=$HOME/texada

The error code I receive is

In file included from texada-src/src//checkers/lineartracechecker.cpp:8:0:
texada-src/src//checkers/lineartracechecker.h:11:30: fatal error: ltlast/allnodes.hh: No such file or directory
#include <ltlast/allnodes.hh>
                          ^
compilation terminated.
make: *** [texada-src/bin/src//checkers/lineartracechecker.o] Error 1
The command '/bin/sh -c make' returned a non-zero code: 2

However, inputing:

RUN export TEXADA_HOME=$HOME/texada

instead of using ENV gives me the following error:

makefile:7: *** TEXADA_HOME shell variable is not set.  Stop.
The command '/bin/sh -c make' returned a non-zero code: 2

Does anyone know how I can work around this error? It installs fine when I install it using the latter command on a separate VM.

0

There are 0 answers