Subject: | Will not build on Alpine Linux 3.9.0 |
Using Alpine Linux 3.9.0 in a Docker container. Steps to reproduce:
apk update && apk upgrade && apk add curl tar make gcc build-base wget gnupg perl perl-dev libressl libressl-dev zlib-dev
curl -L https://cpanmin.us | perl - App::cpanminus
cpanm https://cpan.metacpan.org/authors/id/S/SU/SULLR/IO-Socket-SSL-2.061.tar.gz (this works fine)
cpanm https://cpan.metacpan.org/authors/id/S/SU/SULLR/IO-Socket-SSL-2.062.tar.gz (this breaks, as do 2.063 and 2.064)
The error is:
Show quoted text
> Failed test 'Can't locate auto/Net/SSLeay/CTX_get0_pa.al in @INC (@INC contains: /root/.cpanm/work/1551758559.877/IO-Socket-SSL-2.062/blib/lib /root/.cpanm/work/1551758559.877/IO-Socket-SSL-2.062/blib/arch /usr/local/lib/perl5/site_perl /usr/local/share/perl5/site_perl /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5/core_perl /usr/share/perl5/core_perl .) at /root/.cpanm/work/1551758559.877/IO-Socket-SSL-2.062/blib/lib/IO/Socket/SSL.pm line 122.
Seems to be caused by this patch:
+
+ if (my $c = eval { Net::SSLeay::X509_V_FLAG_PARTIAL_CHAIN() }) {
+ $check_partial_chain = sub {
+ my $ctx = shift;
+ my $param = Net::SSLeay::CTX_get0_param($ctx);
+ Net::SSLeay::X509_VERIFY_PARAM_set_flags($param, $c);
+ };
+ }
}
The file `CTX_get0_pa.al` does not exist anywhere on the host.