link problem with fivewin 25.01 64 bit and VS2022

marzio
Posts: 144
Joined: Wed Apr 04, 2007 6:54 am
Been thanked: 3 times

link problem with fivewin 25.01 64 bit and VS2022

Post by marzio »

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

Code: Select all | Expand


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 $<
User avatar
Antonio Linares
Site Admin
Posts: 42715
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Has thanked: 93 times
Been thanked: 103 times
Contact:

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by Antonio Linares »

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
marzio
Posts: 144
Joined: Wed Apr 04, 2007 6:54 am
Been thanked: 3 times

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by marzio »

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:

Code: Select all | Expand

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 $<

User avatar
cnavarro
Posts: 6601
Joined: Wed Feb 15, 2012 8:25 pm
Location: España
Has thanked: 6 times
Been thanked: 8 times

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by cnavarro »

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
marzio
Posts: 144
Joined: Wed Apr 04, 2007 6:54 am
Been thanked: 3 times

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by marzio »

cnavarro wrote: Wed Mar 26, 2025 4:52 pm This folder is correct?
$(VC32DIR)\
yes, the path is correct.

Code: Select all | Expand


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 
marzio
Posts: 144
Joined: Wed Apr 04, 2007 6:54 am
Been thanked: 3 times

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by marzio »

this is a small part of the content of link.log file. the entire file contains more than 3000 row. :shock:

Code: Select all | Expand

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
User avatar
cnavarro
Posts: 6601
Joined: Wed Feb 15, 2012 8:25 pm
Location: España
Has thanked: 6 times
Been thanked: 8 times

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by cnavarro »

marzio wrote: Wed Mar 26, 2025 5:14 pm
cnavarro wrote: Wed Mar 26, 2025 4:52 pm 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
User avatar
Antonio Linares
Site Admin
Posts: 42715
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Has thanked: 93 times
Been thanked: 103 times
Contact:

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by Antonio Linares »

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
marzio
Posts: 144
Joined: Wed Apr 04, 2007 6:54 am
Been thanked: 3 times

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by marzio »

Antonio Linares wrote: Wed Mar 26, 2025 8: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.
buildh64 tutor01
i obtain this result:

Code: Select all | Expand

┌────────────────────────────────────────────────────────────────────────────┐
│ 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>
User avatar
Antonio Linares
Site Admin
Posts: 42715
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Has thanked: 93 times
Been thanked: 103 times
Contact:

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by Antonio Linares »

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
marzio
Posts: 144
Joined: Wed Apr 04, 2007 6:54 am
Been thanked: 3 times

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by marzio »

Antonio Linares wrote: Wed Mar 26, 2025 9: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
no, i had notice that the vcvarsall.bat file did not exist
Last edited by marzio on Wed Mar 26, 2025 9:33 pm, edited 1 time in total.
marzio
Posts: 144
Joined: Wed Apr 04, 2007 6:54 am
Been thanked: 3 times

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by marzio »

cnavarro wrote: Wed Mar 26, 2025 7:18 pm
marzio wrote: Wed Mar 26, 2025 5:14 pm
cnavarro wrote: Wed Mar 26, 2025 4:52 pm 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.
User avatar
Antonio Linares
Site Admin
Posts: 42715
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Has thanked: 93 times
Been thanked: 103 times
Contact:

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by Antonio Linares »

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
marzio
Posts: 144
Joined: Wed Apr 04, 2007 6:54 am
Been thanked: 3 times

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by marzio »

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
marzio
Posts: 144
Joined: Wed Apr 04, 2007 6:54 am
Been thanked: 3 times

Re: link problem with fivewin 25.01 64 bit and VS2022

Post by marzio »

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!
Post Reply