cpan> install Devel::Refcount Devel::Refcount is up to date (0.10). cpan> install Win32::LongPath Running install for module 'Win32::LongPath' Checksum for C:\STRAWB~1\cpan\sources\authors\id\R\RB\RBOISVERT\Win32-LongPath-1.07.tar.gz ok Scanning cache C:\STRAWB~1\cpan\build for sizes ............................................................................DONE Configuring R/RB/RBOISVERT/Win32-LongPath-1.07.tar.gz with Makefile.PL Writing ppport.h Checking if your kit is complete... Looks good Generating a dmake-style Makefile Writing Makefile for Win32::LongPath Writing MYMETA.yml and MYMETA.json RBOISVERT/Win32-LongPath-1.07.tar.gz C:\Strawberry\perl\bin\perl.exe Makefile.PL -- OK Running make for R/RB/RBOISVERT/Win32-LongPath-1.07.tar.gz cp lib/Win32/LongPath.pm blib\lib\Win32\LongPath.pm Running Mkbootstrap for LongPath () "C:\Strawberry\perl\bin\perl.exe" "-Iinc" -MExtUtils::Command -e chmod -- 644 "LongPath.bs" "C:\Strawberry\perl\bin\perl.exe" "-Iinc" -MExtUtils::Command::MM -e cp_nonempty -- LongPath.bs blib\arch\auto\Win32\LongPath\LongPath.bs 644 "C:\Strawberry\perl\bin\perl.exe" "-Iinc" "C:\Strawberry\perl\lib\ExtUtils\xsubpp" -typemap C:\STRAWB~1\perl\lib\ExtUtils\typemap xs\LongPath.xs > xs\LongPath.xsc "C:\Strawberry\perl\bin\perl.exe" "-Iinc" -MExtUtils::Command -e mv -- xs\LongPath.xsc xs\LongPath.c gcc -c "-I." "-I." -s -O2 -DWIN32 -DWIN64 -DCONSERVATIVE -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fwrapv -fno-strict-aliasing -mms-bitfields -Wall -W -Wno-comment -s -O2 -DVERSION=\"1.07\" -DXS_VERSION=\"1.07\" -o xs\LongPath.o "-IC:\STRAWB~1\perl\lib\CORE" -DUSE_PPPORT -DWINVER=0x0a00 -D_WIN32_WINNT=0x0a00 xs\LongPath.c In file included from C:/STRAWB~1/perl/lib/CORE/hv.h:631, from C:/STRAWB~1/perl/lib/CORE/perl.h:3904, from xs\\LongPath.xs:21: C:/STRAWB~1/perl/lib/CORE/hv_func.h: In function `S_perl_hash_murmur3': C:/STRAWB~1/perl/lib/CORE/hv_func.h:403: warning: cast from pointer to integer of different size xs\\LongPath.xs: In function `MakeSymbolicLink': xs\\LongPath.xs:79: warning: implicit declaration of function `CreateSymbolicLinkW' xs\\LongPath.xs:80: error: `SYMBOLIC_LINK_FLAG_DIRECTORY' undeclared (first use in this function) xs\\LongPath.xs:80: error: (Each undeclared identifier is reported only once xs\\LongPath.xs:80: error: for each function it appears in.) xs\\LongPath.xs: In function `XS_Win32__LongPath_find_close': xs\\LongPath.xs:179: warning: cast to pointer from integer of different size xs\\LongPath.xs: In function `XS_Win32__LongPath_find_first_file': xs\\LongPath.xs:191: warning: cast from pointer to integer of different size xs\\LongPath.xs: In function `XS_Win32__LongPath_find_next_file': xs\\LongPath.xs:281: warning: cast to pointer from integer of different size dmake.exe: Error code 129, while making 'xs\LongPath.o' RBOISVERT/Win32-LongPath-1.07.tar.gz C:\STRAWB~1\c\bin\dmake.exe -- NOT OK Stopping: 'install' failed for 'Win32::LongPath'. Failed during this command: RBOISVERT/Win32-LongPath-1.07.tar.gz : make NO cpan> #### C:\Users\Fred>type virus6.pl #!/usr/bin/perl use warnings; use strict; use File::Find; use Cwd; my $current = cwd; find( \&pm_beneath, $current, ); sub pm_beneath { use File::Basename; use 5.01; my $file = $File::Find::name; my $ref_to_file = \$file; my $days = .1; #hard-coded my $basename = basename($file); return if $file =~ /.*AppData.*/; use Fcntl ':mode'; use Win32::LongPath qw(:funcs :fileattr); # get object testL ('e', $file) or die "$file doesn't exist!"; $stat = statL ($file) or die ("unable to get stat for $file ($^E)"); # this test for directory $stat->{mode} & S_IFDIR ? print "Directory\n" : print "File\n"; # is the same as this one $stat->{attribs} & FILE_ATTRIBUTE_DIRECTORY ? print "Directory\n" : print "File\n"; # show file times as local time printf "Created: %s\nAccessed: %s\nModified: %s\n", scalar localtime $stat->{ctime}, scalar localtime $stat->{atime}, scalar localtime $stat->{mtime}; my $access_age = -M $basename; return if ( $access_age > $days ); print "$file\n"; printf "$basename: M age in days: %.4f\n\n", $access_age; say "ref to file is $ref_to_file"; } __END__ C:\Users\Fred>perl virus6.pl Can't locate Win32/LongPath.pm in @INC (you may need to install the Win32::LongPath module) (@INC contains: C:\Users\Fred\Documents\perl5\lib\perl5/5.24.0/MSWin32-x64-multi-thread C:\Users\Fred\Documents\perl5\lib\perl5/5.24.0 C:\Users\Fred\Documents\perl5\lib\perl5/MSWin32-x64-multi-thread C:\Users\Fred\Documents\perl5\lib\perl5 C:\Users\Fred\perl5\lib\perl5/5.24.0/MSWin32-x64-multi-thread C:\Users\Fred\perl5\lib\perl5/5.24.0 C:\Users\Fred\perl5\lib\perl5/MSWin32-x64-multi-thread C:\Users\Fred\perl5\lib\perl5 C:/Strawberry/perl/site/lib C:/Strawberry/perl/vendor/lib C:/Strawberry/perl/lib .) at virus6.pl line 22. BEGIN failed--compilation aborted at virus6.pl line 22. C:\Users\Fred>