FWH64

User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: FWH64

Post by Antonio Linares »

Tim,

I have built hbssl.lib this way:

go.bat

Code: Select all

@set oldinclude=%include%
@set oldlib=%lib%
@set oldlibpath=%libpath%
if exist "%ProgramFiles%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" call "%ProgramFiles%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64
if exist "%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" call "%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64

cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ bio.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ err.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ evp.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ evpciph.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ evpenc.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ evpmd.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ evppkey.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ pem.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ rand.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ ssl.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ ssl_hb.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ ssl_inet.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ ssl_sock.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ sslciph.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ sslctx.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ sslsess.c
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ x509.c

Lib /DEF:hbssl.def /OUT:hbssl.lib

Lib hbssl.lib /OUT:hbssl.lib bio.obj err.obj evp.obj evpciph.obj evpenc.obj evpmd.obj evppkey.obj pem.obj rand.obj ssl.obj ssl_hb.obj ssl_inet.obj ssl_sock.obj sslciph.obj sslctx.obj x509.obj

@set path=%oldpath%
@set include=%oldinclude%
@set lib=%oldlib%
@set libpath=%oldlibpath%
@set oldpath=""
@set oldinclude=""
@set oldlib=
@set oldlibpath=
Where hbssl.def is:

Code: Select all

LIBRARY hbssl

DESCRIPTION 'hbssl'

EXPORTS
           dummy      @1
I downloaded the required header files from here:
https://www.openssl.org/source/

Here you have the lib for VSC2015:
https://bitbucket.org/fivetech/harbour- ... sc2015.zip
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: FWH64

Post by Antonio Linares »

Tim,

Harbour has a hbtip contrib folder but I can not find a hbtipssl one

Where is the source code for hbtipssl ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
TimStone
Posts: 2536
Joined: Fri Oct 07, 2005 1:45 pm
Location: Trabuco Canyon, CA USA
Contact:

Re: FWH64

Post by TimStone »

I posted to the Harbour group. I'm not sure if they actually came up with a better approach, but they apparently removed hbtipssl from the downloads with Harbour 3.0.

Tim
Tim Stone
http://www.MasterLinkSoftware.com
timstone@masterlinksoftware.com
Using: FWH 19.06 with Harbour 3.2.0 / Microsoft Visual Studio Community 2019
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: FWH64

Post by Antonio Linares »

Tim,

I googled for hbtipssl and found this:

Code: Select all

#
# $Id: hbtipssl.hbp 15168 2010-07-23 11:08:33Z vszakats $
#

hbtip.hbm

../hbssl/hbssl.hbc

-DHB_HAS_OPENSSL
So it seems as hbtipssl.lib uses the same code as hbtip.lib but compiled with the flag -DHB_HAS_OPENSSL
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: FWH64

Post by Antonio Linares »

Tim,

I managed to build hbtipssl.lib this way:

go.bat

Code: Select all

@set oldpath=%path%
@set oldinclude=%include%
@set oldlib=%lib%
@set oldlibpath=%libpath%
if exist "%ProgramFiles%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" call "%ProgramFiles%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64
if exist "%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" call "%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64

c:\harbour\bin\harbour -n -Ic:\harbour\include cgi.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ cgi.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include client.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ client.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include credent.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ credent.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include encb64.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ encb64.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include encoder.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ encoder.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include encqp.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ encqp.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include encurl.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ encurl.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include ftpcli.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ ftpcli.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include httpcli.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ httpcli.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include log.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ log.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include mail.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ mail.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include popcli.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ popcli.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include sendmail.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ sendmail.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include sessid.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ sessid.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include smtpcli.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ smtpcli.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include thtml.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ thtml.c -DHB_HAS_OPENSSL

c:\harbour\bin\harbour -n -Ic:\harbour\include url.prg
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ url.c -DHB_HAS_OPENSSL

cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ encurlc.c -DHB_HAS_OPENSSL
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ mime.c -DHB_HAS_OPENSSL
cl -TC -W3 -O2 -c -Ic:\harbour\include -Ic:\ misc.c -DHB_HAS_OPENSSL

Lib /DEF:hbtipssl.def /OUT:hbtipssl.lib /MACHINE:X86

Lib hbtipssl.lib /OUT:hbtipssl.lib encurlc.obj mime.obj misc.obj cgi.obj client.obj credent.obj encb64.obj encoder.obj encqp.obj encurl.obj ftpcli.obj httpcli.obj log.obj mail.obj popcli.obj sendmail.obj sessid.obj smtpcli.obj thtml.obj url.obj

@set path=%oldpath%
@set include=%oldinclude%
@set lib=%oldlib%
@set libpath=%oldlibpath%
@set oldpath=""
@set oldinclude=""
@set oldlib=
@set oldlibpath=
hbtipssl.def

Code: Select all

LIBRARY hbtipssl

EXPORTS
           dummy      @1
Here you have it:
https://bitbucket.org/fivetech/harbour- ... sc2015.zip
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
TimStone
Posts: 2536
Joined: Fri Oct 07, 2005 1:45 pm
Location: Trabuco Canyon, CA USA
Contact:

Re: FWH64

Post by TimStone »

So now we are down to

ace32 ( or ace64 ) .lib
rddads.lib

I am adding these to my collection of Harbour64 libs. Once tested, they could be part of future distributions.

Tim
Tim Stone
http://www.MasterLinkSoftware.com
timstone@masterlinksoftware.com
Using: FWH 19.06 with Harbour 3.2.0 / Microsoft Visual Studio Community 2019
User avatar
byte-one
Posts: 1048
Joined: Mon Oct 24, 2005 9:54 am
Location: Austria
Contact:

Re: FWH64

Post by byte-one »

Antonio, is possible to use Harbour.exe for 32bit to compile the prgs for 64bit?
Regards,
Günther
---------------------------------
office@byte-one.com
User avatar
TimStone
Posts: 2536
Joined: Fri Oct 07, 2005 1:45 pm
Location: Trabuco Canyon, CA USA
Contact:

Re: FWH64

Post by TimStone »

byte-one wrote:Antonio, is possible to use Harbour.exe for 32bit to compile the prgs for 64bit?
Harbor creates the c code and your 64 bit compiles that to true 64 bit obj code which is linked
Tim Stone
http://www.MasterLinkSoftware.com
timstone@masterlinksoftware.com
Using: FWH 19.06 with Harbour 3.2.0 / Microsoft Visual Studio Community 2019
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: FWH64

Post by Antonio Linares »

Günther,

> is possible to use Harbour.exe for 32bit to compile the prgs for 64bit?

Yes
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: FWH64

Post by Antonio Linares »

Tim,

Do you have ace64.dll ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
TimStone
Posts: 2536
Joined: Fri Oct 07, 2005 1:45 pm
Location: Trabuco Canyon, CA USA
Contact:

Re: FWH64

Post by TimStone »

Antonio,

No I do not, nor do I have RDDADS.lib

But here is the good news. I took my huge app, which builds in 32 bit with everything. With the two tip libs you sent, I temporarily took out the reference to ADS ( but it is much needed ), and I actually got a full build using Visual Studio Community 2015.

It's not perfect. It's a bit slower ... but we shall see how that works out. In addition, I use the Codejock calendar ( calling the .ocx ) and that is not working. It comes up with an OLE error. I have both a 32 bit and 64 bit .dll for the calendar control, so I need to find out how to change the configuration to call the right one to see if that is the problem. I had this thought that a 64 bit program might be able to create an object from a 32 bit .dll but perhaps not.

At least we are close. Hopefully we can get the ADS working and I can more fully test the 64 bit version.

Tim
Tim Stone
http://www.MasterLinkSoftware.com
timstone@masterlinksoftware.com
Using: FWH 19.06 with Harbour 3.2.0 / Microsoft Visual Studio Community 2019
User avatar
TimStone
Posts: 2536
Joined: Fri Oct 07, 2005 1:45 pm
Location: Trabuco Canyon, CA USA
Contact:

Re: FWH64

Post by TimStone »

I misread that. Yes, I have ACE64.dll and will email it to you.
Tim Stone
http://www.MasterLinkSoftware.com
timstone@masterlinksoftware.com
Using: FWH 19.06 with Harbour 3.2.0 / Microsoft Visual Studio Community 2019
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: FWH64

Post by Antonio Linares »

Tim,

We need to retrieve the ace64.def file from the ace64.dll file

usually we use Borland impdef.exe for that, but bcc582, bcc7, bcc7164 impdefs are failing with ace64.dll

impdef.exe ace64.def ace64.dll

We need to get that ace64.def file in order to create a ace64.lib (import library)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: FWH64

Post by mastintin »

implibf - impdef if only for 32bits app. use Mkexp.exe ...

Generating an import library from a DLL:

mkexp mydll.a mydll.dll

Generating an import library from a .DEF file:

mkexp mydll.a mydll.def

http://docwiki.embarcadero.com/RADStudi ... or_C%2B%2B

http://docwiki.embarcadero.com/RADStudi ... on_Manager
User avatar
TimStone
Posts: 2536
Joined: Fri Oct 07, 2005 1:45 pm
Location: Trabuco Canyon, CA USA
Contact:

Re: FWH64

Post by TimStone »

I actually downloaded the Advantage Client Engine 64 bit and it includes an ACE64.lib to go with the DLL. I will test that in the morning, IF we can hand the RDDADS.lib that is still missing.

Tim
Tim Stone
http://www.MasterLinkSoftware.com
timstone@masterlinksoftware.com
Using: FWH 19.06 with Harbour 3.2.0 / Microsoft Visual Studio Community 2019
Post Reply