Docker
27 Mar 2019 - cookrn
In order to make this project and repo more approachable, I’m attempting to script
all changes needed to get to a working iMatix Base toolchain. To start, this is
being completed in the Dockerfile, with a simple docker-compose
wrapper, and
some shortcuts in a Makefile.
In the previous post, we were stuck with a decision
to make around which c
script of which a few different versions are embedded in
the OpenAMQ and GSL projects. As mentioned in that post, it seemed like our best
bet was the version in the GSL project. Note that the GSL project is separate from
the GSL tooling included in OpenAMQ.
That leaves us with a current challenge around the following:
cookrn@hyperion:~/workspace/hintjens/openamq/tooling/base2$ make -e PATH="/home/cookrn/workspace/hintjens/gsl/src:$PATH"
cd xnf; if test -f Makefile; then make ; fi
cd icl; if test -f Makefile; then make ; fi
make[1]: Entering directory '/home/cookrn/workspace/hintjens/openamq/tooling/base2/icl'
c -q icl_mutex.c
In file included from icl_mutex.c:39:0:
icl.h:704:10: fatal error: base_apr.h: No such file or directory
#include "base_apr.h"
^~~~~~~~~~~~
compilation terminated.
Makefile:55: recipe for target 'icl_mutex.o' failed
make[1]: *** [icl_mutex.o] Error 1
make[1]: Leaving directory '/home/cookrn/workspace/hintjens/openamq/tooling/base2/icl'
Makefile:38: recipe for target 'all' failed
make: *** [all] Error 2
The specific error message being that in the iCL Base2 tool, the icl_mutex.c
file is unable to the base_apr.h
header file. As pointed out, we’re only able
to locate one of those files:
cookrn@hyperion:~/workspace/hintjens$ find . -name "base_apr.h"
./openamq/tooling/foreign/apr/base_apr.h
In the next post then, now that the Docker tooling has caught up, we’ll look at how iCL can find the header file it needs.