View on GitHub

iMatix Base

An archive and tribute to the iMatix Corporation base tooling.

Download this project as a .zip file Download this project as a tar.gz file

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.