FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour link problem with fivewin 25.01 64 bit and VS2022
Posts: 193
Joined: Wed Apr 04, 2007 06:54 AM

link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 03:16 PM
hi at all.
i have installed fivewin 25.01 with harbour.
i have modify the mak file ( used for fivewin 17.01 and VC2017) adapting it to the new folders.
I managed to generate ppt, ppo, c e obj files.

i have copied stdio.h from include vc17 a include vc22 plus all the under files:
corecrt.h, corecrt_wstdio.h, corecrt_stdio_config.h, stdlib.h, corecrt_malloc.h, corecrt_search.h, stddef.h,
corecrt_wstdlib.h, string.h, corecrt_memory.h, corecrt_memcpy_s.h, errno.h, corecrt_wstring.h, malloc.h

the link asked me the following lib files:
i have copied msvcrt.lib from lib vc17 to the folder of the program: \scuola64 and all following files:
libcmt.lib, OLDNAMES.lib, uuid.lib

with uuid.lib give me an error and create a link.log file of 3000 row with 1038 not resolved external.
i have read some posts but without results.

as you can see I disabled rc.exe because it gives syntax errors and does not compile.

can you help me?

thanks Marzio
called from:
.\..\..\VC2022\bin\Hostx64\x64\nmake -fscuolaC64.mak



HBDIR=.\..\..\Hb64vC22
FWDIR=.\..\..\fwh642501
VCDIR=.\..\..\VC2022
VC32DIR=.\..\..\VC2017
SDKDIR=.\..\..\VC2022\sdk

PRGS = scuola.prg functscl.prg TcBrowse.prg #tmGet.prg Combo_Box.prg

.SUFFIXES: .prg .c .obj .rc .res

scuola64.exe : $(PRGS:.prg=.obj) scuola64.res
   @echo $(PRGS:.prg=.obj) > msvc.tmp

   @echo $(FWDIR)\lib\FiveH64.lib  >> msvc.tmp
 	@echo $(FWDIR)\lib\FiveHC64.lib >> msvc.tmp

   @echo $(HBDIR)\lib\win\msvc64\hbrtl.lib    >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbvm.lib     >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\gtgui.lib    >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hblang.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbmacro.lib  >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbrdd.lib    >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\rddntx.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\rddcdx.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\rddfpt.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbsix.lib    >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbdebug.lib  >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbcommon.lib >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbpp.lib     >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbwin.lib    >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbcplr.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\xhb.lib      >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbpcre.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbct.lib     >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbcpage.lib  >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbzlib.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\png.lib      >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbzlib.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbziparc.lib >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbmzip.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\minizip.lib  >> msvc.tmp

   @echo $(VC32DIR)\Lib\LIBCMT.lib                                                  >> msvc.tmp
   @echo $(VC32DIR)\Lib\OLDNAMES.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\gdi32.lib                                                   >> msvc.tmp
   @echo $(VC32DIR)\Lib\winspool.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\comctl32.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\comdlg32.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\advapi32.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\shell32.lib                                                 >> msvc.tmp
   @echo $(VC32DIR)\Lib\ole32.lib                                                   >> msvc.tmp
   @echo $(VC32DIR)\Lib\oleaut32.lib                                                >> msvc.tmp
#   @echo $(VC32DIR)\Lib\uuid.lib                                                    >> msvc.tmp
   @echo $(VC32DIR)\Lib\odbc32.lib                                                  >> msvc.tmp
   @echo $(VC32DIR)\Lib\odbccp32.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\iphlpapi.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\mpr.lib                                                     >> msvc.tmp
   @echo $(VC32DIR)\Lib\version.lib                                                 >> msvc.tmp
   @echo $(VC32DIR)\Lib\wsock32.lib                                                 >> msvc.tmp
   @echo $(VC32DIR)\Lib\msimg32.lib                                                 >> msvc.tmp
   @echo $(VC32DIR)\Lib\oledlg.lib                                                  >> msvc.tmp
   @echo $(VC32DIR)\Lib\psapi.lib                                                   >> msvc.tmp
   @echo $(VC32DIR)\Lib\gdiplus.lib                                                 >> msvc.tmp
   @echo $(VC32DIR)\Lib\winmm.lib                                                   >> msvc.tmp

#   @echo $(VC32DIR)\Lib\amd64\libcmt.lib                                                >> msvc.tmp
#   @echo $(VC32DIR)\Lib\amd64\oldnames.lib                                              >> msvc.tmp
#   @echo $(VC32DIR)\Lib\amd64\libvcruntime.lib                                          >> msvc.tmp
#   @echo $(VC32DIR)\kit\lib\ucrt\x64\libucrt.lib                                        >> msvc.tmp


   IF EXIST scuola64.res echo scuola64.res >> msvc.tmp
#  copiare .\..\..\VC2015\bin\cvtres.exe nella cartella x86_amd64

   $(VCDIR)\bin\Hostx64\x64\link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:msvcrt > link.log
   @type link.log
   @del $(PRGS:.prg=.obj)

$(PRGS:.prg=.obj) : $(PRGS:.prg=.c)
$(PRGS:.prg=.c) : $(PRGS)

# scuola64.res : scuola64.rc
#   $(VC32DIR)\bin\rc.exe -r -d__FLAT__ scuola64.rc

.prg.c:
   $(HBDIR)\bin\win\msvc64\harbour $< /n /i$(FWDIR)\include;$(HBDIR)\include -gc3 -p -p+
#-gc3 come parametro di harbour genera codice C e non pcode.

.c.obj:
#   $(VCDIR)\bin\x86_amd64\cl.exe -c -TC -W3 -I$(HBDIR)\include -I$(SDKDIR)\include -I$(VCDIR)\include -I$(VCDIR)\kit\include\ucrt $<
   $(VCDIR)\bin\Hostx64\x64\cl.exe -c -TC -W3 -I$(HBDIR)\include -I$(SDKDIR)\include -I$(VCDIR)\include -I$(VCDIR)\kit\include\ucrt -I$(FWDIR)\include $<
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 03:23 PM

Dear Marzio,

You have to use these flags with the linker: /NODEFAULTLIB:libucrt /NODEFAULTLIB:msvcrt

and link Microsoft ucrt.lib

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 193
Joined: Wed Apr 04, 2007 06:54 AM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 03:58 PM
thanks Antonio for your replay, but not resolve the problem.
like before, i obtain a big link.log and error.

see the mak file modify:
HBDIR=.\..\..\Hb64vC22
FWDIR=.\..\..\fwh642501
VCDIR=.\..\..\VC2022
VC32DIR=.\..\..\VC2017
SDKDIR=.\..\..\VC2022\sdk

PRGS = scuola.prg functscl.prg TcBrowse.prg #tmGet.prg Combo_Box.prg

.SUFFIXES: .prg .c .obj .rc .res

scuola64.exe : $(PRGS:.prg=.obj) scuola64.res
   @echo $(PRGS:.prg=.obj) > msvc.tmp

   @echo $(FWDIR)\lib\FiveH64.lib  >> msvc.tmp
 	@echo $(FWDIR)\lib\FiveHC64.lib >> msvc.tmp

   @echo $(HBDIR)\lib\win\msvc64\hbrtl.lib    >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbvm.lib     >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\gtgui.lib    >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hblang.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbmacro.lib  >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbrdd.lib    >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\rddntx.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\rddcdx.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\rddfpt.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbsix.lib    >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbdebug.lib  >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbcommon.lib >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbpp.lib     >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbwin.lib    >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbcplr.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\xhb.lib      >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbpcre.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbct.lib     >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbcpage.lib  >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbzlib.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\png.lib      >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbzlib.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbziparc.lib >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\hbmzip.lib   >> msvc.tmp
   @echo $(HBDIR)\lib\win\msvc64\minizip.lib  >> msvc.tmp

   @echo $(VC32DIR)\Lib\gdi32.lib                                                   >> msvc.tmp
   @echo $(VC32DIR)\Lib\winspool.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\comctl32.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\comdlg32.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\advapi32.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\shell32.lib                                                 >> msvc.tmp
   @echo $(VC32DIR)\Lib\ole32.lib                                                   >> msvc.tmp
   @echo $(VC32DIR)\Lib\oleaut32.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\odbc32.lib                                                  >> msvc.tmp
   @echo $(VC32DIR)\Lib\odbccp32.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\iphlpapi.lib                                                >> msvc.tmp
   @echo $(VC32DIR)\Lib\mpr.lib                                                     >> msvc.tmp
   @echo $(VC32DIR)\Lib\version.lib                                                 >> msvc.tmp
   @echo $(VC32DIR)\Lib\wsock32.lib                                                 >> msvc.tmp
   @echo $(VC32DIR)\Lib\msimg32.lib                                                 >> msvc.tmp
   @echo $(VC32DIR)\Lib\oledlg.lib                                                  >> msvc.tmp
   @echo $(VC32DIR)\Lib\psapi.lib                                                   >> msvc.tmp
   @echo $(VC32DIR)\Lib\gdiplus.lib                                                 >> msvc.tmp
   @echo $(VC32DIR)\Lib\winmm.lib                                                   >> msvc.tmp
   @echo .\lib\oldnames.lib                                                         >> msvc.tmp
   @echo .\lib\ucrt.lib                                                             >> msvc.tmp
   @echo .\lib\uuid.lib                                                             >> msvc.tmp
   @echo .\lib\libcmt.lib                                                           >> msvc.tmp

#   @echo $(VC32DIR)\Lib\amd64\libvcruntime.lib                                          >> msvc.tmp
#   @echo $(VC32DIR)\kit\lib\ucrt\x64\libucrt.lib                                        >> msvc.tmp


   IF EXIST scuola64.res echo scuola64.res >> msvc.tmp
#  copiare .\..\..\VC2015\bin\cvtres.exe nella cartella x86_amd64

   $(VCDIR)\bin\Hostx64\x64\link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:libucrt /NODEFAULTLIB:msvcrt > link.log
   @type link.log
   @del $(PRGS:.prg=.obj)

$(PRGS:.prg=.obj) : $(PRGS:.prg=.c)
$(PRGS:.prg=.c) : $(PRGS)

# scuola64.res : scuola64.rc
#   $(VC32DIR)\bin\rc.exe -r -d__FLAT__ scuola64.rc

.prg.c:
   $(HBDIR)\bin\win\msvc64\harbour $< /n /i$(FWDIR)\include;$(HBDIR)\include -gc3 -p -p+
#-gc3 come parametro di harbour genera codice C e non pcode.

.c.obj:
#   $(VCDIR)\bin\x86_amd64\cl.exe -c -TC -W3 -I$(HBDIR)\include -I$(SDKDIR)\include -I$(VCDIR)\include -I$(VCDIR)\kit\include\ucrt $<
   $(VCDIR)\bin\Hostx64\x64\cl.exe -c -TC -W3 -I$(HBDIR)\include -I$(SDKDIR)\include -I$(VCDIR)\include -I$(VCDIR)\kit\include\ucrt -I$(FWDIR)\include $<
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 04:52 PM
This folder is correct?
$(VC32DIR)\
Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la nociΓ³n del tiempo

El secreto de la felicidad no estΓ‘ en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 193
Joined: Wed Apr 04, 2007 06:54 AM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 05:14 PM
cnavarro wrote: This folder is correct?
$(VC32DIR)\
yes, the path is correct.
content of file: msvc.tmp

scuola.obj functscl.obj TcBrowse.obj 
.\..\..\fwh642501\lib\FiveH64.lib 
.\..\..\fwh642501\lib\FiveHC64.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbrtl.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbvm.lib 
.\..\..\Hb64vC22\lib\win\msvc64\gtgui.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hblang.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbmacro.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbrdd.lib 
.\..\..\Hb64vC22\lib\win\msvc64\rddntx.lib 
.\..\..\Hb64vC22\lib\win\msvc64\rddcdx.lib 
.\..\..\Hb64vC22\lib\win\msvc64\rddfpt.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbsix.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbdebug.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbcommon.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbpp.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbwin.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbcplr.lib 
.\..\..\Hb64vC22\lib\win\msvc64\xhb.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbpcre.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbct.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbcpage.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbzlib.lib 
.\..\..\Hb64vC22\lib\win\msvc64\png.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbzlib.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbziparc.lib 
.\..\..\Hb64vC22\lib\win\msvc64\hbmzip.lib 
.\..\..\Hb64vC22\lib\win\msvc64\minizip.lib 
.\..\..\VC2017\Lib\gdi32.lib 
.\..\..\VC2017\Lib\winspool.lib 
.\..\..\VC2017\Lib\comctl32.lib 
.\..\..\VC2017\Lib\comdlg32.lib 
.\..\..\VC2017\Lib\advapi32.lib 
.\..\..\VC2017\Lib\shell32.lib 
.\..\..\VC2017\Lib\ole32.lib 
.\..\..\VC2017\Lib\oleaut32.lib 
.\..\..\VC2017\Lib\odbc32.lib 
.\..\..\VC2017\Lib\odbccp32.lib 
.\..\..\VC2017\Lib\iphlpapi.lib 
.\..\..\VC2017\Lib\mpr.lib 
.\..\..\VC2017\Lib\version.lib 
.\..\..\VC2017\Lib\wsock32.lib 
.\..\..\VC2017\Lib\msimg32.lib 
.\..\..\VC2017\Lib\oledlg.lib 
.\..\..\VC2017\Lib\psapi.lib 
.\..\..\VC2017\Lib\gdiplus.lib 
.\..\..\VC2017\Lib\winmm.lib 
.\..\..\VC2017\Lib\libvcruntime.lib 
.\..\..\VC2017\lib\libucrt.lib 
.\lib\oldnames.lib 
.\lib\ucrt.lib 
.\lib\uuid.lib 
.\lib\libcmt.lib 
scuola64.res
Posts: 193
Joined: Wed Apr 04, 2007 06:54 AM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 05:59 PM
this is a small part of the content of link.log file. the entire file contains more than 3000 row. :shock:
hbrtl.lib(vfile.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbwin.lib(win_misc_1.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbct.lib(trig.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbrtl.lib(hbi18n1.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbrtl.lib(gttone.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbrtl.lib(itemseri.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbcplr.lib(gencc.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbpcre.lib(pcrecomp.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbct.lib(dattime3.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbct.lib(ctmath2.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbcplr.lib(harboury.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbcplr.lib(complex.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbcplr.lib(genc.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbcplr.lib(exproptb.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbcommon.lib(expropt1.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbcommon.lib(expropt2.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbwin.lib(olecore.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbcplr.lib(hbmain.obj) : error LNK2001: simbolo esterno _fltused non risolto
rddfpt.lib(dbffpt1.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbcommon.lib(hbstr.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbcommon.lib(hbdate.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbcommon.lib(hbprintf.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbrdd.lib(sdf1.obj) : error LNK2001: simbolo esterno _fltused non risolto
hbrdd.lib(dbf1.obj) : error LNK2001: simbolo esterno _fltused non risolto
rddntx.lib(dbfntx1.obj) : error LNK2001: simbolo esterno _fltused non risolto
rddcdx.lib(dbfcdx1.obj) : error LNK2001: simbolo esterno _fltused non risolto
FiveHC64.lib(richedit.obj) : error LNK2001: simbolo esterno memset non risolto
FiveHC64.lib(richedi5.obj) : error LNK2001: simbolo esterno memset non risolto
FiveHC64.lib(tabctrlw.obj) : error LNK2001: simbolo esterno memset non risolto
FiveHC64.lib(tabctrl.obj) : error LNK2001: simbolo esterno memset non risolto
FiveHC64.lib(getdir.obj) : error LNK2001: simbolo esterno memset non risolto
FiveHC64.lib(fwunicode.obj) : error LNK2001: simbolo esterno memset non risolto
FiveHC64.lib(icons.obj) : error LNK2001: simbolo esterno memset non risolto
FiveHC64.lib(nonclient.obj) : error LNK2001: simbolo esterno memset non risolto
FiveH64.lib(getsysin.obj) : error LNK2001: simbolo esterno memset non risolto
FiveHC64.lib(dlg2chr.obj) : error LNK2001: simbolo esterno memset non risolto
FiveHC64.lib(winexec.obj) : error LNK2001: simbolo esterno memset non risolto
FiveHC64.lib(getfile.obj) : error LNK2001: simbolo esterno memset non risolto

..............................

minizip.lib(ioapi.obj) : error LNK2019: riferimento al simbolo esterno __imp__ftelli64 non risolto nella funzione ftell64_file_func
hbrtl.lib(gttone.obj) : error LNK2019: riferimento al simbolo esterno __imp_Beep non risolto nella funzione hb_gt_wNtTone
hbrtl.lib(itemseri.obj) : error LNK2019: riferimento al simbolo esterno _byteswap_uint64 non risolto nella funzione _hb_get_rev_uint64
hbvm.lib(dynlibhb.obj) : error LNK2019: riferimento al simbolo esterno __imp_LoadLibraryW non risolto nella funzione hb_libLoad
hbpp.lib(ppcore.obj) : error LNK2019: riferimento al simbolo esterno __imp_fputs non risolto nella funzione hb_pp_dumpEnd
hbwin.lib(win_misc_1.obj) : error LNK2019: riferimento al simbolo esterno __imp_QueryPerformanceFrequency non risolto nella funzione HB_FUN_WIN_QPCOUNTER2SEC
hbwin.lib(win_misc_1.obj) : error LNK2019: riferimento al simbolo esterno __imp_CreateEventW non risolto nella funzione HB_FUN_WIN_SYSREFRESH
hbwin.lib(win_misc_1.obj) : error LNK2019: riferimento al simbolo esterno __imp_FindResourceW non risolto nella funzione HB_FUN_WIN_LOADRESOURCE
hbwin.lib(win_misc_1.obj) : error LNK2019: riferimento al simbolo esterno __imp_MsgWaitForMultipleObjects non risolto nella funzione HB_FUN_WIN_SYSREFRESH
hbwin.lib(wapi_shellapi.obj) : error LNK2019: riferimento al simbolo esterno __imp_ShellExecuteExW non risolto nella funzione HB_FUN_WAPI_SHELLEXECUTE_WAIT
hbwin.lib(win_regc.obj) : error LNK2019: riferimento al simbolo esterno __imp_RegCreateKeyExW non risolto nella funzione HB_FUN_WIN_REGCREATEKEYEX
hbwin.lib(win_regc.obj) : error LNK2019: riferimento al simbolo esterno __imp_RegDeleteKeyW non risolto nella funzione HB_FUN_WIN_REGDELETEKEY
hbwin.lib(win_regc.obj) : error LNK2019: riferimento al simbolo esterno __imp_RegDeleteValueW non risolto nella funzione HB_FUN_WIN_REGDELETEVALUE
hbwin.lib(win_regc.obj) : error LNK2019: riferimento al simbolo esterno __imp_RegOpenKeyExW non risolto nella funzione HB_FUN_WIN_REGOPENKEYEX
hbwin.lib(win_regc.obj) : error LNK2019: riferimento al simbolo esterno __imp_RegQueryValueExW non risolto nella funzione HB_FUN_WIN_REGQUERYVALUEEX
hbwin.lib(win_regc.obj) : error LNK2019: riferimento al simbolo esterno __imp_RegSetValueExW non risolto nella funzione HB_FUN_WIN_REGSETVALUEEX
.\..\..\VC2017\Lib\gdi32.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\winspool.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\comctl32.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\comdlg32.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\advapi32.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\shell32.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\ole32.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\oleaut32.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\odbc32.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\odbccp32.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\iphlpapi.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\mpr.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\version.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\wsock32.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\msimg32.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\oledlg.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\psapi.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\gdiplus.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\winmm.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\Lib\libvcruntime.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\..\..\VC2017\lib\libucrt.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\lib\ucrt.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
.\lib\libcmt.lib : warning LNK4272: il tipo 'x86' del computer della libreria   in conflitto con il tipo 'x64' del computer di destinazione
scuola.exe : fatal error LNK1120: 1008 esterni non risolti
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 07:18 PM
marzio wrote:
This folder is correct? $(VC32DIR)\
yes, the path is correct.
Excuse me, so the path that contains that definition is correct?
VC32DIR=.\..\..\VC2017
Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la nociΓ³n del tiempo

El secreto de la felicidad no estΓ‘ en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 08:50 PM

Dear Marzio,

You are mixing 32 and 64 bits:

> .....\VC2017\Lib\gdi32.lib : warning LNK4272: il tipo 'x86' del computer della libreria in conflitto con il tipo 'x64' del computer di destinazione

Please go to FWH64\samples and run this:

buildh64.bat tutor01

Everything should work fine. Please try it.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 193
Joined: Wed Apr 04, 2007 06:54 AM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 09:17 PM
Antonio Linares wrote: Dear Marzio,

You are mixing 32 and 64 bits:
> .\..\..\VC2017\Lib\gdi32.lib : warning LNK4272: il tipo 'x86' del computer della libreria in conflitto con il tipo 'x64' del computer di destinazione

Please go to FWH64\samples and run this:

buildh64.bat tutor01

Everything should work fine. Please try it.
buildh64 tutor01
i obtain this result:
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ FWH 64 for Harbour 25.01 (VS64bits)  Jan. 2025  Harbour development power  β”‚β–„
β”‚ (c) FiveTech 1993-2025 for Microsoft Windows 9X/NT/200X/ME/XP/Vista/7/8/10 β”‚β–ˆ
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β–ˆ
Β  β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€
Error in script usage. The correct usage is:
    "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" [option]
  or
    "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" [option] store
  or
    "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" [option] [version number]
  or
    "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" [option] store [version number]
where [option] is: x86 | amd64 | arm | x86_amd64 | x86_arm | amd64_x86 | amd64_arm
where [version number] is either the full Windows 10 SDK version number or "8.1" to use the windows 8.1 SDK
:
The store parameter sets environment variables to support
  store (rather than desktop) development.
:
For example:
    "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x86_amd64
    "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x86_arm store
    "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x86_amd64 10.0.10240.0
    "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x86_arm store 10.0.10240.0
    "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 8.1
    "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 store 8.1
:
Please make sure either Visual Studio or C++ Build SKU is installed.
Compiling...
Harbour 3.2.0dev (r2502110321)
Copyright (c) 1999-2024, https://harbour.github.io/
Compiling 'tutor01.prg' and generating preprocessed output to 'tutor01.ppo'...
Lines 5031, Functions/Procedures 1
Generating C source output to 'tutor01.c'... Done.
"cl" non Γ¨ riconosciuto come comando interno o esterno,
 un programma eseguibile o un file batch.
"rc" non Γ¨ riconosciuto come comando interno o esterno,
 un programma eseguibile o un file batch.
"link" non Γ¨ riconosciuto come comando interno o esterno,
 un programma eseguibile o un file batch.
* Linking errors *

c:\fwh64\samples>
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 09:26 PM

Please check if you have this folder and file:

C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat

thank you

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 193
Joined: Wed Apr 04, 2007 06:54 AM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 09:30 PM
Antonio Linares wrote: Please check if you have this folder and file:

C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat

thank you
no, i had notice that the vcvarsall.bat file did not exist
Posts: 193
Joined: Wed Apr 04, 2007 06:54 AM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 09:31 PM
cnavarro wrote:
This folder is correct?
yes, the path is correct.
Excuse me, so the path that contains that definition is correct?
VC32DIR=.\..\..\VC2017
i have a folder d:\winclip that contain fivewin folder, harbour folder, vc2017 folder , vc2022 folder , applications folder.
applications folder contains scuola64 folder where there are the prg files, mak file, and where i launch my build64.bat
from this folder i must go down of 2 folder to return to winclip folder and find the harbour, fivewin and vc2022 folders.
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 09:37 PM

Best thing you can do is to allow Visual Studio Community to install in its folders by default.

Don't move it to a different place. Leave it as it installs.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 193
Joined: Wed Apr 04, 2007 06:54 AM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Wed Mar 26, 2025 09:40 PM

Antonio

i have reinstalled and updated visual studio 2022 community and now the bat files are present.

buildh64 tutor01 now works fine.

now i try to compile my program.

thanks

Posts: 193
Joined: Wed Apr 04, 2007 06:54 AM

Re: link problem with fivewin 25.01 64 bit and VS2022

Posted: Thu Mar 27, 2025 07:51 AM

i have created one file from my three files prg, i have added two file lib:

echo "%VCDIR%\Tools\MSVC\14.43.34808\lib\x64\Libcmt.lib" >> msvc.tmp

echo "%VCDIR%\Tools\MSVC\14.43.34808\lib\x64\libvcruntime.lib" >> msvc.tmp

and now i have an exe file!