Web lists-archives.com

Re: fail to compile last perl source under cygwin 2.9.0




On 2017-09-13 16:44, Denis Excoffier wrote:
> I tried to build perl-5.26.0 with GCC 7.2.0 (build from source with cygwin's GCC 5.4.0)

Please keep in mind that only the GCC packages shipped in the
distribution (currently, 6.4.0) are supported here.  That being said, I
don't think the version of GCC would particularly matter here.

> and failed with the following error:
> 
> pp.c: In function 'Perl_pp_crypt':
> pp.c:3743:43: error: invalid application of 'sizeof' to incomplete type 'struct crypt_data'
>     (struct crypt_data *)safemalloc(sizeof(struct crypt_data));
>                                            ^~~~~~
> 
> Currently i cannot figure out whether this is crypt's or perl's fault. Any help appreciated.

crypt_r and struct crypt_data are GNU extensions and therefore, just
like with glibc, requires _GNU_SOURCE in order to compile.  perl must be
defining _GNU_SOURCE with glibc in order for this to compile there;
perhaps it just needs to know that we require it as well.

> When i was under cygwin 2.8.2, everything was ok.

crypt is separate from the cygwin package.  crypt was completely
reimplemented a few weeks ago to include new features.

-- 
Yaakov

Attachment: signature.asc
Description: OpenPGP digital signature