Skip Menu |

This queue is for tickets about the Net-SSLeay CPAN distribution.

Report information
The Basics
Id: 100610
Status: resolved
Priority: 0/
Queue: Net-SSLeay

People
Owner: MIKEM [...] cpan.org
Requestors: shay [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: 1.67



Subject: Build failure on Windows (VC++ 2010, Windows 7)
Building on Windows 7 with VC++ 2010 I get 7 unresolved externals from the linker: libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol __imp__CertFreeCertificateContext@4 referenced in function _capi_free_key libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol __imp__CertGetCertificateContextProperty@16 referenced in function _capi_get_prov_info libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol __imp__CertOpenStore@20 referenced in function _capi_open_store libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol __imp__CertFindCertificateInStore@24 referenced in function _capi_find_cert libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol __imp__CertEnumCertificatesInStore@8 referenced in function _capi_find_cert libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol __imp__CertCloseStore@8 referenced in function _capi_find_key libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol __imp__CertDuplicateCertificateContext@4 referenced in function _capi_load_ssl_client_cert blib\arch\auto\Net\SSLeay\SSLeay.dll : fatal error LNK1120: 7 unresolved externals These are all resolved by including Microsoft's Crypt32.lib in the link command line.
Subject: Re: [rt.cpan.org #100610] Build failure on Windows (VC++ 2010, Windows 7)
Date: Sun, 30 Nov 2014 08:06:42 +1000
To: bug-Net-SSLeay [...] rt.cpan.org
From: Mike McCauley <mikem [...] airspayce.com>
Hello, Thanks. Can you send me the command line you used successfully? Cheers. On Saturday, November 29, 2014 11:59:35 AM you wrote: Show quoted text
> Sat Nov 29 11:59:33 2014: Request 100610 was acted upon. > Transaction: Ticket created by SHAY > Queue: Net-SSLeay > Subject: Build failure on Windows (VC++ 2010, Windows 7) > Broken in: (no value) > Severity: (no value) > Owner: Nobody > Requestors: shay@cpan.org > Status: new > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=100610 > > > > Building on Windows 7 with VC++ 2010 I get 7 unresolved externals from the > linker: > > libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol > __imp__CertFreeCertificateContext@4 referenced in function _capi_free_key > libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol > __imp__CertGetCertificateContextProperty@16 referenced in function > _capi_get_prov_info libeay32.lib(e_capi.obj) : error LNK2019: unresolved > external symbol __imp__CertOpenStore@20 referenced in function > _capi_open_store libeay32.lib(e_capi.obj) : error LNK2019: unresolved > external symbol __imp__CertFindCertificateInStore@24 referenced in function > _capi_find_cert libeay32.lib(e_capi.obj) : error LNK2019: unresolved > external symbol __imp__CertEnumCertificatesInStore@8 referenced in function > _capi_find_cert libeay32.lib(e_capi.obj) : error LNK2019: unresolved > external symbol __imp__CertCloseStore@8 referenced in function > _capi_find_key libeay32.lib(e_capi.obj) : error LNK2019: unresolved > external symbol __imp__CertDuplicateCertificateContext@4 referenced in > function _capi_load_ssl_client_cert blib\arch\auto\Net\SSLeay\SSLeay.dll : > fatal error LNK1120: 7 unresolved externals > > These are all resolved by including Microsoft's Crypt32.lib in the link > command line.
-- Mike McCauley VK4AMM mikem@airspayce.com Airspayce Pty Ltd 9 Bulbul Place Currumbin Waters QLD 4223 Australia http://www.airspayce.com Phone +61 7 5598-7474
Subject: Re: [rt.cpan.org #100610] Build failure on Windows (VC++ 2010, Windows 7)
Date: Tue, 09 Dec 2014 17:16:09 +1000
To: bug-Net-SSLeay [...] rt.cpan.org, shay [...] cpan.org
From: Mike McCauley <mikem [...] airspayce.com>
Steve? On Sunday, November 30, 2014 08:06:42 AM Mike McCauley wrote: Show quoted text
> Hello, > > Thanks. > Can you send me the command line you used successfully? > > Cheers. > > On Saturday, November 29, 2014 11:59:35 AM you wrote:
> > Sat Nov 29 11:59:33 2014: Request 100610 was acted upon. > > Transaction: Ticket created by SHAY > > > > Queue: Net-SSLeay > > > > Subject: Build failure on Windows (VC++ 2010, Windows 7) > > > > Broken in: (no value) > > > > Severity: (no value) > > > > Owner: Nobody > > > > Requestors: shay@cpan.org > > > > Status: new > > > > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=100610 > > > > > Building on Windows 7 with VC++ 2010 I get 7 unresolved externals from the > > linker: > > > > libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol > > __imp__CertFreeCertificateContext@4 referenced in function _capi_free_key > > libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol > > __imp__CertGetCertificateContextProperty@16 referenced in function > > _capi_get_prov_info libeay32.lib(e_capi.obj) : error LNK2019: unresolved > > external symbol __imp__CertOpenStore@20 referenced in function > > _capi_open_store libeay32.lib(e_capi.obj) : error LNK2019: unresolved > > external symbol __imp__CertFindCertificateInStore@24 referenced in > > function > > _capi_find_cert libeay32.lib(e_capi.obj) : error LNK2019: unresolved > > external symbol __imp__CertEnumCertificatesInStore@8 referenced in > > function > > _capi_find_cert libeay32.lib(e_capi.obj) : error LNK2019: unresolved > > external symbol __imp__CertCloseStore@8 referenced in function > > _capi_find_key libeay32.lib(e_capi.obj) : error LNK2019: unresolved > > external symbol __imp__CertDuplicateCertificateContext@4 referenced in > > function _capi_load_ssl_client_cert blib\arch\auto\Net\SSLeay\SSLeay.dll : > > fatal error LNK1120: 7 unresolved externals > > > > These are all resolved by including Microsoft's Crypt32.lib in the link > > command line.
-- Mike McCauley VK4AMM mikem@airspayce.com Airspayce Pty Ltd 9 Bulbul Place Currumbin Waters QLD 4223 Australia http://www.airspayce.com Phone +61 7 5598-7474
On Tue Dec 09 02:16:22 2014, mikem@airspayce.com wrote: Show quoted text
> Steve? > > On Sunday, November 30, 2014 08:06:42 AM Mike McCauley wrote:
> > Hello, > > > > Thanks. > > Can you send me the command line you used successfully? > > > > Cheers. > > > > On Saturday, November 29, 2014 11:59:35 AM you wrote:
> > > Sat Nov 29 11:59:33 2014: Request 100610 was acted upon. > > > Transaction: Ticket created by SHAY > > > > > > Queue: Net-SSLeay > > > > > > Subject: Build failure on Windows (VC++ 2010, Windows 7) > > > > > > Broken in: (no value) > > > > > > Severity: (no value) > > > > > > Owner: Nobody > > > > > > Requestors: shay@cpan.org > > > > > > Status: new > > > > > > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=100610 > > > > > > > Building on Windows 7 with VC++ 2010 I get 7 unresolved externals > > > from the > > > linker: > > > > > > libeay32.lib(e_capi.obj) : error LNK2019: unresolved external > > > symbol > > > __imp__CertFreeCertificateContext@4 referenced in function > > > _capi_free_key > > > libeay32.lib(e_capi.obj) : error LNK2019: unresolved external > > > symbol > > > __imp__CertGetCertificateContextProperty@16 referenced in function > > > _capi_get_prov_info libeay32.lib(e_capi.obj) : error LNK2019: > > > unresolved > > > external symbol __imp__CertOpenStore@20 referenced in function > > > _capi_open_store libeay32.lib(e_capi.obj) : error LNK2019: > > > unresolved > > > external symbol __imp__CertFindCertificateInStore@24 referenced in > > > function > > > _capi_find_cert libeay32.lib(e_capi.obj) : error LNK2019: > > > unresolved > > > external symbol __imp__CertEnumCertificatesInStore@8 referenced in > > > function > > > _capi_find_cert libeay32.lib(e_capi.obj) : error LNK2019: > > > unresolved > > > external symbol __imp__CertCloseStore@8 referenced in function > > > _capi_find_key libeay32.lib(e_capi.obj) : error LNK2019: unresolved > > > external symbol __imp__CertDuplicateCertificateContext@4 referenced > > > in > > > function _capi_load_ssl_client_cert > > > blib\arch\auto\Net\SSLeay\SSLeay.dll : > > > fatal error LNK1120: 7 unresolved externals > > > > > > These are all resolved by including Microsoft's Crypt32.lib in the > > > link > > > command line.
Sorry, I slightly forgot about this... The normal MakeMaker LIBS parameter appearing in my Makefile is: LIBS => [q[-LC:/Dev/Software/openssl/lib -llibeay32 -lssleay32]] That needs to include Crypt32.lib too. I don't know how to *append* a library to the list of libraries to be used by MakeMaker. All I'm aware of is that you can set LIBS in order to *replace* it, so if I build with this command-line: perl Makefile.PL LIBS="-LC:/Dev/Software/openssl/lib -llibeay32 -lssleay32 -lcrypt32" then the build is fixed. I doubt if all Windows builds of OpenSSL pull in symbols from Crypt32.lib. It's probably compiler-specific; maybe OS-specific. I'm using VC++ 2010. I suspect later versions (2012 and 2013) will also need it. I don't know about earlier versions off-hand, but can try it if that would help. Or you could always include -lcrypt32 anyway: If it isn't required then its presence in LIBS will do no harm, and if it isn't even found then MakeMaker will just issue the warning "Warning (mostly harmless): No library found for -lcrypt32".
Btw, I also get this (unrelated) warning from Makefile.PL: WARNING: can't open config file: C:\openssl/ssl/openssl.cnf despite having set OPENSSL_PREFIX=C:/Dev/Software/openssl The openssl.cnf file on my system is in C:/Dev/Software/openssl/ssl
Subject: Re: [rt.cpan.org #100610] Build failure on Windows (VC++ 2010, Windows 7)
Date: Fri, 02 Jan 2015 13:34:06 +1000
To: bug-Net-SSLeay [...] rt.cpan.org
From: Mike McCauley <mikem [...] airspayce.com>
Hi again Steve, Ive been trying to reproduce this on Windows with Microsoft Visual Studio 2010 Express and it builds OK for me, with both OpenSSL 1.0.1j binary from http://slproweb.com/download/Win32OpenSSL-1_0_1j.exe and OpenSSL 1.0.1e built from source. What OpenSSL are you using? Cheers. On Saturday, November 29, 2014 11:59:35 AM you wrote: Show quoted text
> Sat Nov 29 11:59:33 2014: Request 100610 was acted upon. > Transaction: Ticket created by SHAY > Queue: Net-SSLeay > Subject: Build failure on Windows (VC++ 2010, Windows 7) > Broken in: (no value) > Severity: (no value) > Owner: Nobody > Requestors: shay@cpan.org > Status: new > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=100610 > > > > Building on Windows 7 with VC++ 2010 I get 7 unresolved externals from the > linker: > > libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol > __imp__CertFreeCertificateContext@4 referenced in function _capi_free_key > libeay32.lib(e_capi.obj) : error LNK2019: unresolved external symbol > __imp__CertGetCertificateContextProperty@16 referenced in function > _capi_get_prov_info libeay32.lib(e_capi.obj) : error LNK2019: unresolved > external symbol __imp__CertOpenStore@20 referenced in function > _capi_open_store libeay32.lib(e_capi.obj) : error LNK2019: unresolved > external symbol __imp__CertFindCertificateInStore@24 referenced in function > _capi_find_cert libeay32.lib(e_capi.obj) : error LNK2019: unresolved > external symbol __imp__CertEnumCertificatesInStore@8 referenced in function > _capi_find_cert libeay32.lib(e_capi.obj) : error LNK2019: unresolved > external symbol __imp__CertCloseStore@8 referenced in function > _capi_find_key libeay32.lib(e_capi.obj) : error LNK2019: unresolved > external symbol __imp__CertDuplicateCertificateContext@4 referenced in > function _capi_load_ssl_client_cert blib\arch\auto\Net\SSLeay\SSLeay.dll : > fatal error LNK1120: 7 unresolved externals > > These are all resolved by including Microsoft's Crypt32.lib in the link > command line.
-- Mike McCauley VK4AMM mikem@airspayce.com Airspayce Pty Ltd 9 Bulbul Place Currumbin Waters QLD 4223 Australia http://www.airspayce.com Phone +61 7 5598-7474
CC: Steve Hay <shay [...] cpan.org>
Subject: Re: [rt.cpan.org #100610] Build failure on Windows (VC++ 2010, Windows 7)
Date: Mon, 5 Jan 2015 21:06:08 +0000
To: bug-Net-SSLeay [...] rt.cpan.org
From: Steve Hay <steve.m.hay [...] googlemail.com>
On 2 January 2015 at 03:34, Mike McCauley via RT <bug-Net-SSLeay@rt.cpan.org> wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=100610 > > > Hi again Steve, > > Ive been trying to reproduce this on Windows with Microsoft Visual Studio 2010 > Express and it builds OK for me, with both > OpenSSL 1.0.1j binary from > http://slproweb.com/download/Win32OpenSSL-1_0_1j.exe > > and > OpenSSL 1.0.1e built from source. > > What OpenSSL are you using? >
1.0.1e, built from source with the same compiler (VC++ 2010 Professional SP1, not Express, but I wouldn't have thought that would make this difference). "openssl.exe version -a" outputs: OpenSSL 1.0.1e 11 Feb 2013 built on: Tue May 28 12:46:11 2013 platform: VC-WIN32 options: bn(64,32) rc4(8x,mmx) des(idx,cisc,2,long) idea(int) blowfish(idx) compiler: cl /MD /Ox /O2 /Ob2 -DOPENSSL_THREADS -DDSO_WIN32 -W3 -Gs0 -GF -Gy -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DOPENSSL_USE_APPLINK -I. -DOPENSSL_NO_RC5 -DOPENSSL_NO_MD2 -DOPENSSL_NO_KRB5 -DOPENSSL_NO_JPAKE -DOPENSSL_NO_STATIC_ENGINE OPENSSLDIR: "C:\openssl/ssl"
Subject: Re: [rt.cpan.org #100610] Build failure on Windows (VC++ 2010, Windows 7)
Date: Tue, 06 Jan 2015 08:17:58 +1000
To: bug-Net-SSLeay [...] rt.cpan.org
From: Mike McCauley <mikem [...] airspayce.com>
Hi Steve, New SVN commit 429 now has crypt32 library specified. Works OK for me (I mean it doesnt break anything even though I clearly dont need it). Pls test that commit and let me know if it works for you. Cheers. On Monday, January 05, 2015 04:06:20 PM you wrote: Show quoted text
> Queue: Net-SSLeay > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=100610 > > > On 2 January 2015 at 03:34, Mike McCauley via RT > > <bug-Net-SSLeay@rt.cpan.org> wrote:
> > <URL: https://rt.cpan.org/Ticket/Display.html?id=100610 > > > > > Hi again Steve, > > > > Ive been trying to reproduce this on Windows with Microsoft Visual Studio > > 2010 Express and it builds OK for me, with both > > OpenSSL 1.0.1j binary from > > http://slproweb.com/download/Win32OpenSSL-1_0_1j.exe > > > > and > > OpenSSL 1.0.1e built from source. > > > > What OpenSSL are you using?
> > 1.0.1e, built from source with the same compiler (VC++ 2010 > Professional SP1, not Express, but I wouldn't have thought that would > make this difference). "openssl.exe version -a" outputs: > > OpenSSL 1.0.1e 11 Feb 2013 > built on: Tue May 28 12:46:11 2013 > platform: VC-WIN32 > options: bn(64,32) rc4(8x,mmx) des(idx,cisc,2,long) idea(int) blowfish(idx) > compiler: cl /MD /Ox /O2 /Ob2 -DOPENSSL_THREADS -DDSO_WIN32 -W3 -Gs0 -GF > -Gy -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN > -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -DOPENSSL_BN_ASM_PART_WORDS > -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m > -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM > -DVPAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DOPENSSL_USE_APPLINK -I. > -DOPENSSL_NO_RC5 -DOPENSSL_NO_MD2 -DOPENSSL_NO_KRB5 -DOPENSSL_NO_JPAKE > -DOPENSSL_NO_STATIC_ENGINE > OPENSSLDIR: "C:\openssl/ssl"
-- Mike McCauley VK4AMM mikem@airspayce.com Airspayce Pty Ltd 9 Bulbul Place Currumbin Waters QLD 4223 Australia http://www.airspayce.com Phone +61 7 5598-7474
On Mon Jan 05 17:18:43 2015, mikem@airspayce.com wrote: Show quoted text
> Hi Steve, > > New SVN commit 429 now has crypt32 library specified. Works OK for me > (I mean > it doesnt break anything even though I clearly dont need it). > > Pls test that commit and let me know if it works for you. >
Yes, that fixes the linker error. Thanks. I still have the openssl.cnf problem that I mentioned earlier, though.
Subject: Re: [rt.cpan.org #100610] Build failure on Windows (VC++ 2010, Windows 7)
Date: Tue, 13 Jan 2015 17:00:59 +1000
To: bug-Net-SSLeay [...] rt.cpan.org
From: Mike McCauley <mikem [...] airspayce.com>
Hi Steve, Thanks for your report. But I havent been able to reproduce this. I cant even tell where this message is coming from from. AFAICS, openssl.cnf is not referred to anywhere in net- ssleay (except for VMS platforms). I think I will have to ask you to investigate this some more yourself. Cheers. On Tuesday, December 09, 2014 03:36:51 AM you wrote: Show quoted text
> Queue: Net-SSLeay > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=100610 > > > Btw, I also get this (unrelated) warning from Makefile.PL: > > WARNING: can't open config file: C:\openssl/ssl/openssl.cnf > > despite having set OPENSSL_PREFIX=C:/Dev/Software/openssl > > The openssl.cnf file on my system is in C:/Dev/Software/openssl/ssl
-- Mike McCauley VK4AMM mikem@airspayce.com Airspayce Pty Ltd 9 Bulbul Place Currumbin Waters QLD 4223 Australia http://www.airspayce.com Phone +61 7 5598-7474