
Maxime Bouton writes:
Hello,
I am trying to set up a automated build for Spot in a docker like environment. The build errored during the `make` step. I have been able to run it fine on my machine, so I hope it is just a dependency/version issue. Do you have any idea what dependency I could be missing?
You do not miss anything secure_getenv() is not a portable function. It's a GNU libc extension, but it seems Alpine Linux is using a different libc without this function. Spot ships with a replacement implementation for secure_getenv() when it is missing, but apparently tmpfile.cc does not include our replacement header for that. Can you try running sed -i 's/<cstdlib>/<stdlib.h>/' spot/misc/tmpfile.cc before make? We received a similar report from a Cygwin user a few weeks ago, but he hasn't confirmed whether the above change solves the problem or not. Now if I can reproduce that problem with an Alpine Docker, I'll probably add that configuration to our build farm. Is your Docker file available online?
I did not installed anything besides python3-dev and got provided with an alpine linux distribution with gcc 7 already installed, this is the configuration I have: Configuration: OS: Alpine Linux Gcc --version: gcc (GCC) 7.1.0 G++ --version : g++ (GCC) 7.1.0 Clang --version: clang version 6.0.1
Spot source: https://gitlab.lrde.epita.fr/spot/spot/-/jobs/21303/artifacts/download (spot 2.6.3 dev)
If you want to automate the download of the the latest successful build (and not build #21303), you can use this link https://gitlab.lrde.epita.fr/spot/spot/-/jobs/artifacts/next/download?job=de...
The build script : apk add python3-dev cd $WORKSPACE/srcdir unzip download tar -xzf spot-2.6.3.dev.tar.gz cd spot-2.6.3.dev ./configure --prefix=$prefix --host=${target}
Are you cross-compiling? What is the value of $target?