-
Notifications
You must be signed in to change notification settings - Fork 8
Description
-
I built GMSEC_API 5.2 from source code on a UBI8 minimal image, and there appears to be issues and assumptions made in the build environment that are not documented or are unclear. For example I didn't realize that
SWIG_HOMEwas supposed to point at the path to the swig binary until I read how it was being used in the associatedMakefile. -
There appears to be some flakiness around building the project. I ended up directly calling
make <make job>and specifying what exactly I wanted to build due to issues I had will callingmakeagainst the highest levelMakefile. Even when doing this though, some of the make jobs would fail but calling it again would generate the binary I needed. For example this is what I have in my Dockerfile:WORKDIR /tmp/GMSEC_API RUN make check_support -j8 RUN make build -j8 RUN make library -j8 RUN make mw_wrappers -j8; exit 0 RUN make tools -j8 RUN make env_val -j8 RUN make java_api -j8; make java_api -j8; exit 0 RUN make perl_api -j8; make perl_api -j8; exit 0 RUN make python3_api -j8; make python3_api -j8; exit 0 RUN cd wrapper/artemis && make -j8 RUN make installAs you can see I have some where I call the make job twice in a row because the first time would fail, the second time would generate the binaries, but I added
exit 0at the end because they would still error out in some cases. Also I had to go intowrapper/artemisdirectory and build it directly as it was looking for artifacts that I think got deleted in another make job.