Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Error installing Filter::Crypto

by jowe (Sexton)
on Mar 29, 2018 at 14:19 UTC ( #1211979=perlquestion: print w/replies, xml ) Need Help??

jowe has asked for the wisdom of the Perl Monks concerning the following question:

Error installing Filter::Crypto on Windows 10 / Strawberry Perl 5.26.1. Attached you will find the screen-output of the install process. What am I doing wrong?

Your help is very much appreciated.

Microsoft Windows [Version 10.0.16299.309] (c) 2017 Microsoft Corporation. Alle Rechte vorbehalten. ============================================================== C:\Users\Jo>perl -V Summary of my perl5 (revision 5 version 26 subversion 1) configuration +: Platform: osname=MSWin32 osvers=6.3 archname=MSWin32-x64-multi-thread uname='Win32 strawberry-perl 5.26.1.1 #1 Sun Sep 24 05:32:33 2017 +x64' config_args='undef' hint=recommended useposix=true d_sigaction=undef useithreads=define usemultiplicity=define use64bitint=define use64bitall=undef uselongdouble=undef usemymalloc=n default_inc_excludes_dot=define bincompat5005=undef Compiler: cc='gcc' ccflags =' -s -O2 -DWIN32 -DWIN64 -DCONSERVATIVE -D__USE_MINGW_ANS +I_STDIO -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLIC +IT_SYS -DUSE_PERLIO -fwrapv -fno-strict-aliasing -mms-bitfields' optimize='-s -O2' cppflags='-DWIN32' ccversion='' gccversion='7.1.0' gccosandvers='' intsize=4 longsize=4 ptrsize=8 doublesize=8 byteorder=12345678 doublekind=3 d_longlong=define longlongsize=8 d_longdbl=define longdblsize=16 longdblkind=3 ivtype='long long' ivsize=8 nvtype='double' nvsize=8 Off_t='long long' lseeksize=8 alignbytes=8 prototype=define Linker and Libraries: ld='g++' ldflags ='-s -L"C:\STRAWB~1\perl\lib\CORE" -L"C:\STRAWB~1\c\lib"' libpth=C:\STRAWB~1\c\lib C:\STRAWB~1\c\x86_64-w64-mingw32\lib C:\S +TRAWB~1\c\lib\gcc\x86_64-w64-mingw32\7.1.0 libs= -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 + -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 - +lmpr -lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32 perllibs= -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomd +lg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_ +32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32 libc= so=dll useshrplib=true libperl=libperl526.a gnulibc_version='' Dynamic Linking: dlsrc=dl_win32.xs dlext=xs.dll d_dlsymun=undef ccdlflags=' ' cccdlflags=' ' lddlflags='-mdll -s -L"C:\STRAWB~1\perl\lib\CORE" -L"C:\STRAWB~1\c +\lib"' Characteristics of this binary (from libperl): Compile-time options: HAS_TIMES HAVE_INTERP_INTERN MULTIPLICITY PERLIO_LAYERS PERL_COPY_ON_WRITE PERL_DONT_CREATE_GVSV PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS PERL_MALLOC_WRAP PERL_OP_PARENT PERL_PRESERVE_IVUV 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 Built under MSWin32 Compiled at Sep 24 2017 05:47:34 @INC: C:/Strawberry/perl/site/lib/MSWin32-x64-multi-thread C:/Strawberry/perl/site/lib C:/Strawberry/perl/vendor/lib C:/Strawberry/perl/lib C:\Users\Jo> ====================================================================== += C:\Users\Jo>cpan -i Filter::Crypto Loading internal null logger. Install Log::Log4perl for logging messag +es CPAN: CPAN::SQLite loaded ok (v0.211) CPAN: LWP::UserAgent loaded ok (v6.27) CPAN: Time::HiRes loaded ok (v1.9746) Fetching with LWP: http://cpan.strawberryperl.com/authors/01mailrc.txt.gz CPAN: YAML::XS loaded ok (v0.66) Fetching with LWP: http://cpan.strawberryperl.com/modules/02packages.details.txt.gz Fetching with LWP: http://cpan.strawberryperl.com/modules/03modlist.data.gz Database was generated on Wed, 28 Mar 2018 11:30:50 GMT Updating database file ... Done! Running install for module 'Filter::Crypto' CPAN: Digest::SHA loaded ok (v6.01) CPAN: Compress::Zlib loaded ok (v2.074) Checksum for C:\STRAWB~1\cpan\sources\authors\id\S\SH\SHAY\Filter-Cryp +to-2.07.tar.gz ok CPAN: Archive::Tar loaded ok (v2.26) CPAN: CPAN::Meta::Requirements loaded ok (v2.140) CPAN: Parse::CPAN::Meta loaded ok (v2.150010) CPAN: CPAN::Meta loaded ok (v2.150010) CPAN: Module::CoreList loaded ok (v5.20170923) Configuring S/SH/SHAY/Filter-Crypto-2.07.tar.gz with Makefile.PL Where is your OpenSSL? [C:\Strawberry\c] C:\Strawberry\c Found include directory ............ C:\Strawberry\c\include Found OpenSSL version .............. 1.1.0f Found crypto library ............... C:\Strawberry\c\lib\libcrypto.a Found binary executable ............ C:\Strawberry\c\bin\openssl.exe Cipher algorithms available: [ 1] DES block cipher [ 2] Two key triple DES block cipher [ 3] Three key triple DES block cipher [ 4] DESX block cipher [ 5] RC4 stream cipher [ 6] IDEA block cipher [ 7] RC2 block cipher [ 8] Blowfish block cipher [ 9] Null cipher [10] RC5 block cipher [11] CAST5 block cipher [12] AES block cipher Which cipher algorithm do you want to use? [12] 12 Modes of operation available: [1] ECB (Electronic Codebook Mode) [2] CBC (Cipher Block Chaining Mode) [3] CFB (64-Bit Cipher Feedback Mode) [4] OFB (64-Bit Output Feedback Mode) Which mode of operation do you want to use? [2] 2 This is a variable key length algorithm. Valid key lengths are: 16, 24 or 32 bytes. What key length (in bytes) do you want to use? [32] 32 You can either specify a password from which the key to be used for encryption/decryption will be derived using a PKCS#5 key derivation algorithm, or you can directly specify the key to use. You can also have a password or key randomly generated for you. Options for specifying or deriving the key: [1] Enter a password when prompted [2] Have a password randomly generated [3] Enter a key when prompted [4] Have a key randomly generated How do you want to specify or derive the key? [2] 2 Random number generators: [1] Perl's built-in rand() function [2] OpenSSL's rand command Which RNG do you want to use? [2] 2 Your cipher configuration has been written to the file 'CipherConfig.h +'. You may want to keep this file in a safe place if you ever need to reb +uild these modules using the same configuration, especially if your key was randomly generated. Build options: [1] Build both components [2] Build CryptFile component only [3] Build Decrypt component only Which component(s) do you want to build? [1] 1 Do you want to install 'crypt_file'? [y] y Checking if your kit is complete... Looks good Writing MYMETA.yml and MYMETA.json Writing MYMETA.yml and MYMETA.json Generating a gmake-style Makefile Writing Makefile for Filter::Crypto Writing MYMETA.yml and MYMETA.json SHAY/Filter-Crypto-2.07.tar.gz C:\Strawberry\perl\bin\perl.exe Makefile.PL -- OK Running make for S/SH/SHAY/Filter-Crypto-2.07.tar.gz cp lib/PAR/Filter/Crypto.pm blib\lib\PAR\Filter\Crypto.pm cp lib/Filter/Crypto.pm blib\lib\Filter\Crypto.pm gmake[1]: Entering directory 'C:/STRAWB~1/cpan/build/Filter-Crypto-2.0 +7-1/CryptFile' Running Mkbootstrap for CryptFile () "C:\Strawberry\perl\bin\perl.exe" -MExtUtils::Command -e chmod -- 644 +"CryptFile.bs" "C:\Strawberry\perl\bin\perl.exe" -MExtUtils::Command::MM -e cp_nonemp +ty -- CryptFile.bs ..\blib\arch\auto\Filter\Crypto\CryptFile\CryptFil +e.bs 644 "C:\Strawberry\perl\bin\perl.exe" "C:\Strawberry\perl\lib\ExtUtils/xsu +bpp" -typemap C:\STRAWB~1\perl\lib\ExtUtils\typemap -typemap C:\STRA +WB~1\cpan\build\Filter-Crypto-2.07-1\CryptFile\typemap CryptFile.xs +> CryptFile.xsc "C:\Strawberry\perl\bin\perl.exe" -MExtUtils::Command -e mv -- CryptFi +le.xsc CryptFile.c gcc -c -IC:\Strawberry\c\include -s -O2 -DWIN32 -DWIN64 -DCONSERVATIV +E -D__USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CO +NTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -fwrapv -fno-strict-aliasing - +mms-bitfields -s -O2 -DVERSION=\"2.07\" -DXS_VERSION=\"2.07\" "-IC +:\STRAWB~1\perl\lib\CORE" -DFILTER_CRYPTO_OPENSSL_VERSION=1010006 Cr +yptFile.c In file included from ../CryptoCommon-c.inc:47:0, from CryptFile.xs:30: ../CryptoCommon-c.inc: In function 'FilterCrypto_CryptoAlloc': ../CryptoCommon-c.inc:160:31: error: invalid application of 'sizeof' t +o incomplete type 'EVP_CIPHER_CTX {aka struct evp_cipher_ctx_st}' Newxz(ctx->cipher_ctx, 1, EVP_CIPHER_CTX); ^ C:\STRAWB~1\perl\lib\CORE/perl.h:3686:46: note: in definition of macro + 'EXPECT' # define EXPECT(expr,val) (expr) ^~~~ C:\STRAWB~1\perl\lib\CORE/perl.h:3689:52: note: in expansion of macro +'cBOOL' #define UNLIKELY(cond) EXPECT(cBOOL(cond),FALSE) ^~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2301:9: note: in expansion of macro +'UNLIKELY' (void)(UNLIKELY(_MEM_WRAP_WILL_WRAP(n,t)) \ ^~~~~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2297:9: note: in expansion of macro +'_MEM_WRAP_NEEDS_RUNTIME_CHECK' ((_MEM_WRAP_NEEDS_RUNTIME_CHECK(n,t) ? (MEM_SIZE)(n) : \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2301:18: note: in expansion of macro + '_MEM_WRAP_WILL_WRAP' (void)(UNLIKELY(_MEM_WRAP_WILL_WRAP(n,t)) \ ^~~~~~~~~~~~~~~~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2308:30: note: in expansion of macro + 'MEM_WRAP_CHECK' #define MEM_WRAP_CHECK_(n,t) MEM_WRAP_CHECK(n,t), ^~~~~~~~~~~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2391:28: note: in expansion of macro + 'MEM_WRAP_CHECK_' #define Newxz(v,n,t) (v = (MEM_WRAP_CHECK_(n,t) (t*)MEM_LOG_ALLOC(n,t +,safecalloc((n),sizeof(t))))) ^~~~~~~~~~~~~~~ ../CryptoCommon-c.inc:160:5: note: in expansion of macro 'Newxz' Newxz(ctx->cipher_ctx, 1, EVP_CIPHER_CTX); ^ ../CryptoCommon-c.inc:160:31: error: invalid application of 'sizeof' t +o incomplete type 'EVP_CIPHER_CTX {aka struct evp_cipher_ctx_st}' Newxz(ctx->cipher_ctx, 1, EVP_CIPHER_CTX); ^ C:\STRAWB~1\perl\lib\CORE/perl.h:3686:46: note: in definition of macro + 'EXPECT' # define EXPECT(expr,val) (expr) ^~~~ C:\STRAWB~1\perl\lib\CORE/perl.h:3689:52: note: in expansion of macro +'cBOOL' #define UNLIKELY(cond) EXPECT(cBOOL(cond),FALSE) ^~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2301:9: note: in expansion of macro +'UNLIKELY' (void)(UNLIKELY(_MEM_WRAP_WILL_WRAP(n,t)) \ ^~~~~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2301:18: note: in expansion of macro + '_MEM_WRAP_WILL_WRAP' (void)(UNLIKELY(_MEM_WRAP_WILL_WRAP(n,t)) \ ^~~~~~~~~~~~~~~~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2308:30: note: in expansion of macro + 'MEM_WRAP_CHECK' #define MEM_WRAP_CHECK_(n,t) MEM_WRAP_CHECK(n,t), ^~~~~~~~~~~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2391:28: note: in expansion of macro + 'MEM_WRAP_CHECK_' #define Newxz(v,n,t) (v = (MEM_WRAP_CHECK_(n,t) (t*)MEM_LOG_ALLOC(n,t +,safecalloc((n),sizeof(t))))) ^~~~~~~~~~~~~~~ ../CryptoCommon-c.inc:160:5: note: in expansion of macro 'Newxz' Newxz(ctx->cipher_ctx, 1, EVP_CIPHER_CTX); ^ ../CryptoCommon-c.inc:160:31: error: invalid application of 'sizeof' t +o incomplete type 'EVP_CIPHER_CTX {aka struct evp_cipher_ctx_st}' Newxz(ctx->cipher_ctx, 1, EVP_CIPHER_CTX); ^ C:\STRAWB~1\perl\lib\CORE/perl.h:3686:46: note: in definition of macro + 'EXPECT' # define EXPECT(expr,val) (expr) ^~~~ C:\STRAWB~1\perl\lib\CORE/perl.h:3689:52: note: in expansion of macro +'cBOOL' #define UNLIKELY(cond) EXPECT(cBOOL(cond),FALSE) ^~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2301:9: note: in expansion of macro +'UNLIKELY' (void)(UNLIKELY(_MEM_WRAP_WILL_WRAP(n,t)) \ ^~~~~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2301:18: note: in expansion of macro + '_MEM_WRAP_WILL_WRAP' (void)(UNLIKELY(_MEM_WRAP_WILL_WRAP(n,t)) \ ^~~~~~~~~~~~~~~~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2308:30: note: in expansion of macro + 'MEM_WRAP_CHECK' #define MEM_WRAP_CHECK_(n,t) MEM_WRAP_CHECK(n,t), ^~~~~~~~~~~~~~ C:\STRAWB~1\perl\lib\CORE/handy.h:2391:28: note: in expansion of macro + 'MEM_WRAP_CHECK_' #define Newxz(v,n,t) (v = (MEM_WRAP_CHECK_(n,t) (t*)MEM_LOG_ALLOC(n,t +,safecalloc((n),sizeof(t))))) ^~~~~~~~~~~~~~~ ../CryptoCommon-c.inc:160:5: note: in expansion of macro 'Newxz' Newxz(ctx->cipher_ctx, 1, EVP_CIPHER_CTX); ^ In file included from C:\STRAWB~1\perl\lib\CORE/perl.h:2698:0, from ../CryptoCommon-c.inc:47, from CryptFile.xs:30: ../CryptoCommon-c.inc:160:31: error: invalid application of 'sizeof' t +o incomplete type 'EVP_CIPHER_CTX {aka struct evp_cipher_ctx_st}' Newxz(ctx->cipher_ctx, 1, EVP_CIPHER_CTX); ^ C:\STRAWB~1\perl\lib\CORE/handy.h:2380:35: note: in definition of macr +o 'MEM_LOG_ALLOC' #define MEM_LOG_ALLOC(n,t,a) (a) ^ ../CryptoCommon-c.inc:160:5: note: in expansion of macro 'Newxz' Newxz(ctx->cipher_ctx, 1, EVP_CIPHER_CTX); ^ In file included from CryptFile.xs:30:0: ../CryptoCommon-c.inc: In function 'FilterCrypto_CryptoInitCipher': ../CryptoCommon-c.inc:258:17: warning: 'RAND_pseudo_bytes' is deprecat +ed [-Wdeprecated-declarations] if (!RAND_pseudo_bytes(salt_text, ctx->required_salt_ +len)) { ^~ In file included from C:/Strawberry/c/include/openssl/bn.h:31:0, from C:/Strawberry/c/include/openssl/asn1.h:24, from C:/Strawberry/c/include/openssl/objects.h:916, from C:/Strawberry/c/include/openssl/evp.h:27, from ../CryptoCommon-c.inc:41, from CryptFile.xs:30: C:/Strawberry/c/include/openssl/rand.h:47:1: note: declared here DEPRECATEDIN_1_1_0(int RAND_pseudo_bytes(unsigned char *buf, int num) +) ^ In file included from CryptFile.xs:30:0: ../CryptoCommon-c.inc:288:17: warning: 'RAND_pseudo_bytes' is deprecat +ed [-Wdeprecated-declarations] if (!RAND_pseudo_bytes(iv_text, ctx->required_iv_len) +) { ^~ In file included from C:/Strawberry/c/include/openssl/bn.h:31:0, from C:/Strawberry/c/include/openssl/asn1.h:24, from C:/Strawberry/c/include/openssl/objects.h:916, from C:/Strawberry/c/include/openssl/evp.h:27, from ../CryptoCommon-c.inc:41, from CryptFile.xs:30: C:/Strawberry/c/include/openssl/rand.h:47:1: note: declared here DEPRECATEDIN_1_1_0(int RAND_pseudo_bytes(unsigned char *buf, int num) +) ^ In file included from CryptFile.xs:30:0: ../CryptoCommon-c.inc: In function 'FilterCrypto_PRNGInit': ../CryptoCommon-c.inc:745:5: warning: implicit declaration of function + 'RAND_screen'; did you mean 'RAND_seed'? [-Wimplicit-function-declar +ation] RAND_screen(); ^~~~~~~~~~~ RAND_seed ./../CryptoCommon-xs.inc: In function 'XS_Filter__Crypto__CryptFile_DE +STROY': ./../CryptoCommon-xs.inc:78:9: warning: 'ERR_remove_state' is deprecat +ed [-Wdeprecated-declarations] ERR_remove_state(0); ^~~~~~~~~~~~~~~~ In file included from C:/Strawberry/c/include/openssl/crypto.h:32:0, from C:/Strawberry/c/include/openssl/bio.h:20, from C:/Strawberry/c/include/openssl/err.h:21, from ../CryptoCommon-c.inc:40, from CryptFile.xs:30: C:/Strawberry/c/include/openssl/err.h:248:1: note: declared here DEPRECATEDIN_1_0_0(void ERR_remove_state(unsigned long pid)) ^ gmake[1]: *** [Makefile:320: CryptFile.o] Error 1 gmake[1]: Leaving directory 'C:/STRAWB~1/cpan/build/Filter-Crypto-2.07 +-1/CryptFile' gmake: *** [Makefile:512: subdirs] Error 2 SHAY/Filter-Crypto-2.07.tar.gz C:\STRAWB~1\c\bin\gmake.exe -- NOT OK Stopping: 'install' failed for 'Filter::Crypto'. C:\Users\Jo> ====================================================================== +=========

Replies are listed 'Best First'.
Re: Error installing Filter::Crypto
by pryrt (Monsignor) on Mar 29, 2018 at 14:34 UTC
      This bug report (showing same error) suggests that it's the version of openssl itself that matters.
      According to the Filter::Crypto owner this should be fixed in the github repo.

      Cheers,
      Rob

        Thank you very much for your quick response. Seems like I have to wait for the next release.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://1211979]
Approved by marto
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (5)
As of 2021-09-20 19:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?