From: curl-library <curl-library-boun...@cool.haxx.se> on behalf of Ray Satiro 
via curl-library <curl-library@cool.haxx.se>

Sent: 02 July 2019 22:13

To: curl-library@cool.haxx.se

Cc: Ray Satiro

Subject: Re: Missing bcrytp.dll when running Watcom compiled Libcurl program on 
XP.

 


On 7/2/2019 11:44 AM, Dan Gribble via curl-library wrote:



Please excuse my ignorance/inexperience but i'm very new to C++ (and OOP, 
compiling/linking in general).? I'll try and explain as best i can what I have 
done so far and hopefully you will be able to advise how to proceed.





I am developing an application that uses the cURL library to post JSON format 
data. The requirement at my installation is to use the Watcom compiler which 
intially caused a few headaches, but I have managed to overcome them with some 
help from Luca on this
 mailing list.





I downloaded cURL 7.64.0 and have been using the curl header in my application 
to carry out the post operations. In order to get around the problem of the 
Watcom calling conventions being different to CDECL, under the guidence of Luca 
I generated an import
 Lib for Watcom from the libcurl.dll and have been using that when compiling 
and linking to generate my executable.







My application works fine under Windows 7 and 10, however, I get the bcrypt.dll 
missing error message when attempting to run it on Windows XP.





If you require any further information, please let me know and I will do my 
best to assist you.





Please don't top-post [1] it makes the conversation hard to follow. Either 
libcurl or one of its dependents is dependent on bcrypt. Official builds don't 
need bcrypt. You can use Dependency Walker [2] to see exactly what DLL needs 
bcrypt. As I said it's
 possible you are building curl in a way that requires bcrypt but I don't know 
what that is. It would help to know exactly how you are building curl.





[1]: 
https://curl.haxx.se/mail/etiquette.html#Do_Not_Top_Post

[2]: http://www.dependencywalker.com/



​Please accept my apologies for the top posting Ray, I should have familiarised 
myself with the rules before posting.

I have run dependency walker against my executable and it is showing that 
BCRYPT.DLL is being called from the following
LIBCURL.DLL   
  '-->  LIBCRYPTO-1_1.DLL  
            '-->  BCRYPT.DLL

It is also being called from a number of other Windows DLLs.

I have not built cURL from scatch. I downloaded the binary (7.64.0) which had 
the command line cURL application and also the header files which I could 
include in my application.

As mentioned perviously, I generated an import library to get around the 
calling convention differences between Watcom and other compilers, using the 
following Watcom command:

 > wlib -n watcom_libcurl.dll.lib +libcurl.dll



.. and have been compiling and linking using the following command:

> wcl386   -i=%WATCOM%\h   -i=%WATCOM%\h\nt   
> -i=C:\OEM\CURL\CURL-7.64.0-WIN32-MINGW\INCLUDE\CURL    -DNDEBUG    -DWIN32    
> -bt=nt    -l=nt    -5s    -xs    c:\djg\myapplication.cpp    
> watcom_libcurl.dll.lib


I have copied libcrypto-1_1.dll and libssl-1_1.dll (from openssl 1.1.1c) to my 
application directory in order to run the compiled application, but other than 
that I have not done anything else.

Kind regards
Dan

-------------------------------------------------------------------
Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library
Etiquette:   https://curl.haxx.se/mail/etiquette.html

Reply via email to