openssl-dev and libffi-dev, at least, are missing. This is the root cause that lead up to #296.
They seem to be available:
$ dri alpine:3.6 apk add --no-cache openssl-dev libffi-dev
fetch http://dl-cdn.alpinelinux.org/alpine/v3.6/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.6/community/x86_64/APKINDEX.tar.gz
(1/7) Installing libffi (3.2.1-r3)
(2/7) Installing pkgconf (1.3.7-r0)
(3/7) Installing libffi-dev (3.2.1-r3)
(4/7) Installing zlib-dev (1.2.11-r0)
(5/7) Installing libcrypto1.0 (1.0.2k-r0)
(6/7) Installing libssl1.0 (1.0.2k-r0)
(7/7) Installing openssl-dev (1.0.2k-r0)
Executing busybox-1.26.2-r4.trigger
OK: 25 MiB in 18 packages
What error are you getting?
I'm sorry. I mean that pip install is failing because it fails to identify these packages as required. Please also note that this worked in 3.4, suggesting that perhaps these dependencies were removed from the base install.
What pip install is failing? How can I reproduce?
I'm sorry. I believe that it is pip install cffi
Works for me: docker run -it alpine:3.6 sh -c "apk add --no-cache libffi-dev build-base py2-pip python2-dev && pip install cffi". What is the error?
If libffi-dev is not installed, pip install fails when it cannot find a header. In other cases, it gives an explicit error.
If libffi-dev is not installed, pip install fails when it cannot find a header.
Right, that is normal.
In other cases, it gives an explicit error.
I can't help if you don't give the error.
gcc -fno-strict-aliasing -Os -fomit-frame-pointer -g -DNDEBUG -Os -fomit-frame-pointer -g -fPIC -DUSE__THREAD -I/usr/include/ffi -I/usr/include/libffi -I/usr/include/python2.7 -c c/_cffi_backend.c -o build/temp.linux-x86_64-2.7/c/_cffi_backend.o
c/_cffi_backend.c:13:17: fatal error: ffi.h: No such file or directory
#include <ffi.h>
^
compilation terminated.
Full pip output here: https://gist.github.com/NathanZook/85c93f3983c2aa0a41c7c6da090f7f51
That is the same error I get if libffi-dev is not installed. It sounds like it is not getting installed properly. What are the commands or Dockerfile that leads to this so I can reproduce it? There still isn't enough information here for me to reproduce.
Uggh. Sorry, the Dockerfile reference fell out when I changed tickets. https://github.com/samsung-cnct/k2-tools. The error occurs when I replace 3.4 with 3.6 in the Dockerfile & in alpine-builds/runme.sh. There are some issues with the Dockerfile, but I feel certain that they are independent of this issue.
It works for me when I replace 3.4 with 3.6 in both those places and add libffi-dev and openssl-dev to the package list in imagerun.sh.
So apparently, I misread pip's output somewhere or the other. Re-checking the doc, there is nothing about "go out and fetch dependencies", or "list missing dependencies".
This helped me so much, thank you!!! I had to install the libffi-dev dependency
Most helpful comment
This helped me so much, thank you!!! I had to install the
libffi-devdependency