rumpkernel / rumprun-packages

Ready-made packages of software for running on the Rumprun unikernel
Other
202 stars 80 forks source link

Python 3 build error -> libressl failed #109

Closed paspanag closed 8 years ago

paspanag commented 8 years ago

I'm in debian with the latest rumprun:

peter@debbie:~/Experiments/unikernels/rumprun-packages/python3$ make make -C ../libressl make[1]: Entering directory '/home/peter/Experiments/unikernels/rumprun-packages/libressl' make -C build make[2]: Entering directory '/home/peter/Experiments/unikernels/rumprun-packages/libressl/build' Making all in crypto make[3]: Entering directory '/home/peter/Experiments/unikernels/rumprun-packages/libressl/build/crypto' CC compat/getentropy_netbsd.lo compat/getentropy_netbsd.c: In function 'getentropy_sysctl': compat/getentropy_netbsd.c:39:11: error: 'KERN_ARND' undeclared (first use in this function) mib[1] = KERN_ARND; ^ compat/getentropy_netbsd.c:39:11: note: each undeclared identifier is reported only once for each function it appears in Makefile:3615: recipe for target 'compat/getentropy_netbsd.lo' failed make[3]: * [compat/getentropy_netbsd.lo] Error 1 make[3]: Leaving directory '/home/peter/Experiments/unikernels/rumprun-packages/libressl/build/crypto' Makefile:451: recipe for target 'all-recursive' failed make[2]: * [all-recursive] Error 1 make[2]: Leaving directory '/home/peter/Experiments/unikernels/rumprun-packages/libressl/build' Makefile:9: recipe for target 'build/libressl' failed make[1]: * [build/libressl] Error 2 make[1]: Leaving directory '/home/peter/Experiments/unikernels/rumprun-packages/libressl' ../Makefile.deps:3: recipe for target '/home/peter/Experiments/unikernels/rumprun-packages/pkgs/lib/libssl.a' failed make: * [/home/peter/Experiments/unikernels/rumprun-packages/pkgs/lib/libssl.a] Error 2

anttikantee commented 8 years ago

Hmm, that's a bit weird. Can you verify that the <sys/sysctl.h> header from sysroot/include/sys is being used? For example edit it to contain #error right before the line KERN_ARND is defined on. The value of sysroot is available by running the compiler (e.g. x86_64-rumprun-netbsd-gcc with the argument -print-sysroot)

rday commented 8 years ago

@paspanag just wanted to see if you still had this error, and if it was specific to the python3 build path (or does it also occur when building libressl alone?).

I wasn't able to reproduce with libressl 2.3.6 or 2.3.5 (version at time issue was opened).

Thanks!

anttikantee commented 8 years ago

I'm closing this based on no further feedback being provided and the original report being weird. Can be reopened if requested details are provided.

hanneslehmann commented 7 years ago

Hi, I do have the same issue :( make downloaded libressl-2.4.2.

Ubuntu 15.10

Linux 4.4.1-040401-generic #201601311534 SMP Sun Jan 31 20:36:43 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

➜  python3 git:(master) pwd
/home/hannes/Dokumente/Development/rumprun/rumprun-packages/python3

Error on make:

➜  python3 git:(master) make                                    
make -C ../libressl
make[1]: Entering directory '/home/hannes/Dokumente/Development/rumprun/rumprun-packages/libressl'
make -C build
make[2]: Entering directory '/home/hannes/Dokumente/Development/rumprun/rumprun-packages/libressl/build'
Making all in crypto
make[3]: Entering directory '/home/hannes/Dokumente/Development/rumprun/rumprun-packages/libressl/build/crypto'
  CC       compat/getentropy_netbsd.lo
compat/getentropy_netbsd.c: In function 'getentropy_sysctl':
compat/getentropy_netbsd.c:39:11: error: 'KERN_ARND' undeclared (first use in this function)
  mib[1] = KERN_ARND;
           ^
compat/getentropy_netbsd.c:39:11: note: each undeclared identifier is reported only once for each function it appears in
Makefile:3615: recipe for target 'compat/getentropy_netbsd.lo' failed
make[3]: *** [compat/getentropy_netbsd.lo] Error 1
make[3]: Leaving directory '/home/hannes/Dokumente/Development/rumprun/rumprun-packages/libressl/build/crypto'
Makefile:452: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/home/hannes/Dokumente/Development/rumprun/rumprun-packages/libressl/build'
Makefile:9: recipe for target 'build/libressl' failed
make[1]: *** [build/libressl] Error 2
make[1]: Leaving directory '/home/hannes/Dokumente/Development/rumprun/rumprun-packages/libressl'
../Makefile.deps:3: recipe for target '/home/hannes/Dokumente/Development/rumprun/rumprun-packages/pkgs/lib/libssl.a' failed
make: *** [/home/hannes/Dokumente/Development/rumprun/rumprun-packages/pkgs/lib/libssl.a] Error 2

x86_64-rumprun-netbsd-gcc -print-sysroot gives me /home/hannes/Dokumente/Development/rumprun/./rumprun/rumprun-x86_64

ciarancourtney commented 7 years ago

Hit this issue today, specifying libressl 2.6.0 in libressl/Makefile resolved it for me