bug in cygwin perl

L A Walsh cygwin@tlinx.org
Sun Oct 25 21:22:56 GMT 2020


I'm using perl 5.26.

The following perl-lib function fails.


 perl -e 'use charnames qw{:full};'                                   
Undefined subroutine utf8::SWASHNEW called at /usr/share/perl5/5.26/_charnames.p
m line 176.                                                                     
Compilation failed in require at /usr/share/perl5/5.26/charnames.pm line 6.     
BEGIN failed--compilation aborted at /usr/share/perl5/5.26/charnames.pm line 6. 
Compilation failed in require at -e line 1.                                     
BEGIN failed--compilation aborted at -e line 1.


Haven't tried newer versions due to problems. 

Also, 'cpan' fails due to the same error:

 cpan                                                                 
Undefined subroutine utf8::SWASHNEW called at /usr/share/perl5/5.26/Safe.pm line
 70.   ...                                                                         


Is this known to be fixed in 5.28 and/or 5.30?  Maybe that module
can be fixed?

Thanks,
linda

perl -v shows:

Summary of my perl5 (revision 5 version 26 subversion 3) configuration:         
                                                                                
  Platform:                                                                     
    osname=cygwin                                                               
    osvers=3.0.7(0.33853)                                                       
    archname=x86_64-cygwin-threads-multi                                        
    uname='cygwin_nt-10.0 cygwinpro 3.0.7(0.33853) 2019-04-30 18:08 x86_64 cygwi
n '                                                                             
    config_args='-des -Dprefix=/usr -Dmksymlinks -Darchname=x86_64-cygwin-thread
s -Dlibperl=cygperl5_26.dll -Dcc=gcc -Dld=g++ -Accflags=-ggdb -O2 -pipe -Wall -W
error=format-security -D_FORTIFY_SOURCE=2 -fstack-protector-strong --param=ssp-b
uffer-size=4 -fdebug-prefix-map=/mnt/share/cygpkgs/perl/perl.x86_64/build=/usr/s
rc/debug/perl-5.26.3-2 -fdebug-prefix-map=/mnt/share/cygpkgs/perl/perl.x86_64/sr
c/perl-5.26.3=/usr/src/debug/perl-5.26.3-2 -fwrapv'                             
    hint=recommended                                                            
    useposix=true                                                               
    d_sigaction=define                                                          
    useithreads=define                                                          
    usemultiplicity=define                                                      
    use64bitint=define                                                          
    use64bitall=define                                                          
    uselongdouble=undef                                                         
    usemymalloc=n                                                               
    default_inc_excludes_dot=define                                             
    bincompat5005=undef                                                         
  Compiler:                                                                     
    cc='gcc'                                                                    
    ccflags ='-DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ -D_GNU_SOURCE -ggdb -O2 -
pipe -Wall -Werror=format-security -D_FORTIFY_SOURCE=2 -fstack-protector-strong 
--param=ssp-buffer-size=4 -fdebug-prefix-map=/mnt/share/cygpkgs/perl/perl.x86_64
/build=/usr/src/debug/perl-5.26.3-2 -fdebug-prefix-map=/mnt/share/cygpkgs/perl/p
erl.x86_64/src/perl-5.26.3=/usr/src/debug/perl-5.26.3-2 -fwrapv -fno-strict-alia
sing'                                                                           
    optimize='-O3'                                                              
    cppflags='-DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ -D_GNU_SOURCE -ggdb -O2 -
pipe -Wall -Werror=format-security -D_FORTIFY_SOURCE=2 -fstack-protector-strong 
--param=ssp-buffer-size=4 -fdebug-prefix-map=/mnt/share/cygpkgs/perl/perl.x86_64
/build=/usr/src/debug/perl-5.26.3-2 -fdebug-prefix-map=/mnt/share/cygpkgs/perl/p
erl.x86_64/src/perl-5.26.3=/usr/src/debug/perl-5.26.3-2 -fwrapv -fno-strict-alia
sing'                                                                           
    ccversion=''                                                                
    gccversion='7.4.0'                                                          
    gccosandvers=''                                                             
    intsize=4                                                                   
    longsize=8                                                                  
    ptrsize=8                                                                   
    doublesize=8                                                                
    byteorder=12345678                                                          
    doublekind=3                                                                
    d_longlong=define                                                           
    longlongsize=8                                                              
    d_longdbl=define                                                            
    longdblsize=16                                                              
    longdblkind=3                                                               
    ivtype='long'                                                               
    ivsize=8                                                                    
    nvtype='double'                                                             
    nvsize=8                                                                    
    Off_t='off_t'                                                               
    lseeksize=8                                                                 
    alignbytes=8                                                                
    prototype=define                                                            
  Linker and Libraries:                                                         
    ld='g++'                                                                    
    ldflags =' -Wl,--enable-auto-import -Wl,--export-all-symbols -Wl,--enable-au
to-image-base -fstack-protector-strong'                                         
    libpth=/usr/lib                                                             
    libs=-lpthread -lnsl -lgdbm -ldb -ldl -lcrypt -lgdbm_compat                 
    perllibs=-lpthread -lnsl -ldl -lcrypt                                       
    libc=/usr/lib/libcygwin.a                                                   
    so=dll                                                                      
    useshrplib=true                                                             
    libperl=cygperl5_26.dll                                                     
    gnulibc_version=''                                                          
  Dynamic Linking:                                                              
    dlsrc=dl_dlopen.xs                                                          
    dlext=dll                                                                   
    d_dlsymun=undef                                                             
    ccdlflags=' '                                                               
    cccdlflags=' '                                                              
    lddlflags=' --shared  -Wl,--enable-auto-import -Wl,--export-all-symbols -Wl,
--enable-auto-image-base -fstack-protector-strong'                              
                                                                                
                                                                                
Characteristics of this binary (from libperl):                                  
  Compile-time options:                                                         
    HAS_TIMES                                                                   
    MULTIPLICITY                                                                
    PERLIO_LAYERS                                                               
    PERL_COPY_ON_WRITE                                                          
    PERL_DONT_CREATE_GVSV                                                       
    PERL_IMPLICIT_CONTEXT                                                       
    PERL_OP_PARENT                                                              
    PERL_PRESERVE_IVUV                                                          
    PERL_USE_SAFE_PUTENV                                                        
    USE_64_BIT_ALL                                                              
    USE_64_BIT_INT                                                              
    USE_ITHREADS                                                                
    USE_LARGE_FILES                                                             
    USE_LOCALE                                                                  
    USE_LOCALE_COLLATE                                                          
    USE_LOCALE_CTYPE                                                            
    USE_LOCALE_NUMERIC                                                          
    USE_LOCALE_TIME                                                             
    USE_PERLIO                                                                  
    USE_PERL_ATOF                                                               
    USE_REENTRANT_API                                                           
  Locally applied patches:                                                      
    Cygwin: README                                                              
    Cygwin: use auto-image-base instead of fixed DLL base address               
    Cygwin: modify hints                                                        
    Cygwin: Configure correct libsearch                                         
    Cygwin: Configure correct libpth                                            
    Cygwin: Win32 correct UTF8 handling                                         
    Perl: File-Path-2.14 (fixes CVE2017-6512)                                   
  Built under cygwin                                                            
  Compiled at Dec  1 2018 08:21:14                                              
  %ENV:                                                                         
    CYGWIN="system nodosfilewarning winsymlinks:native export"                  
  @INC:                                                                         
    /usr/local/lib/perl5/site_perl/5.26/x86_64-cygwin-threads                   
    /usr/local/share/perl5/site_perl/5.26                                       
    /usr/lib/perl5/vendor_perl/5.26/x86_64-cygwin-threads                       
    /usr/share/perl5/vendor_perl/5.26                                           
    /usr/lib/perl5/5.26/x86_64




More information about the Cygwin mailing list