Error en librerias de Harbour MSVC

Error en librerias de Harbour MSVC

Postby acuellar » Wed Apr 17, 2024 9:00 pm

Buenas tardes estimados

He descargado Harbour para msvc2022 de https://github.com/FiveTechSoft/harbour_and_xharbour_builds/blob/master/README.md

Y me da éstos errores:
Code: Select all  Expand view

--------------------Configuración: MovieCenter - Release--------------------
LINK : warning LNK4286: symbol '_strncmp' defined in 'libucrt.lib(strncmp.obj)' is imported by 'hbcplr.lib(hbfunchk.obj)'
LINK : warning LNK4286: symbol '_strncmp' defined in 'libucrt.lib(strncmp.obj)' is imported by 'hbpcre.lib(pcrecomp.obj)'
LINK : warning LNK4286: symbol '_strncmp' defined in 'libucrt.lib(strncmp.obj)' is imported by 'hbcplr.lib(hbdbginf.obj)'
LINK : warning LNK4286: symbol '_strncmp' defined in 'libucrt.lib(strncmp.obj)' is imported by 'hbcplr.lib(harboury.obj)'
LINK : warning LNK4217: symbol '_strncmp' defined in 'libucrt.lib(strncmp.obj)' is imported by 'hbcplr.lib(cmdcheck.obj)' in function '_hb_compChkOptionLen'
LINK : warning LNK4286: symbol '_strncmp' defined in 'libucrt.lib(strncmp.obj)' is imported by 'hbcplr.lib(genc.obj)'
LINK : warning LNK4217: symbol '_strncmp' defined in 'libucrt.lib(strncmp.obj)' is imported by 'hbrtl.lib(hbjson.obj)' in function '__hb_jsonDecode'
LINK : warning LNK4286: symbol '_strncmp' defined in 'libucrt.lib(strncmp.obj)' is imported by 'hbvm.lib(hvmall.obj)'
LINK : warning LNK4286: symbol '_strncmp' defined in 'libucrt.lib(strncmp.obj)' is imported by 'rddntx.lib(dbfntx1.obj)'
LINK : warning LNK4286: symbol '_strncmp' defined in 'libucrt.lib(strncmp.obj)' is imported by 'hbcommon.lib(funcid.obj)'
LINK : warning LNK4217: symbol '_exit' defined in 'libucrt.lib(exit.obj)' is imported by 'hbrtl.lib(errint.obj)' in function '_hb_errInternal'
LINK : warning LNK4286: symbol '_fclose' defined in 'libucrt.lib(fclose.obj)' is imported by 'hbcplr.lib(compi18n.obj)'
LINK : warning LNK4286: symbol '_fclose' defined in 'libucrt.lib(fclose.obj)' is imported by 'hbpp.lib(ppcore.obj)'
LINK : warning LNK4286: symbol '_fclose' defined in 'libucrt.lib(fclose.obj)' is imported by 'minizip.lib(ioapi.obj)'
LINK : warning LNK4217: symbol '_fclose' defined in 'libucrt.lib(fclose.obj)' is imported by 'hbrtl.lib(errintlo.obj)' in function '_hb_errInternalRaw'
LINK : warning LNK4286: symbol '_fclose' defined in 'libucrt.lib(fclose.obj)' is imported by 'hbcplr.lib(hbmain.obj)'
LINK : warning LNK4286: symbol '_fclose' defined in 'libucrt.lib(fclose.obj)' is imported by 'hbcplr.lib(genc.obj)'
LINK : warning LNK4217: symbol '_fclose' defined in 'libucrt.lib(fclose.obj)' is imported by 'hbcplr.lib(genhrb.obj)' in function '_hb_compGenPortObj'
LINK : warning LNK4286: symbol '___stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'hbpp.lib(ppcore.obj)'
LINK : warning LNK4286: symbol '___stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'hbcplr.lib(hbcomp.obj)'
LINK : warning LNK4286: symbol '___stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'hbcplr.lib(genc.obj)'
LINK : warning LNK4286: symbol '___stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'hbcplr.lib(compi18n.obj)'
LINK : warning LNK4286: symbol '___stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'hbcplr.lib(gencc.obj)'
LINK : warning LNK4217: symbol '___stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'hbrtl.lib(errintlo.obj)' in function '__vfprintf_l'
LINK : warning LNK4286: symbol '___stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'hbvm.lib(hvmall.obj)'
LINK : warning LNK4286: symbol '___stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'rddcdx.lib(dbfcdx1.obj)'
LINK : warning LNK4286: symbol '___stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'hbcplr.lib(hbmain.obj)'
LINK : warning LNK4217: symbol '___acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'hbvm.lib(hvmall.obj)' in function '_internal_malloc_stats'
LINK : warning LNK4286: symbol '___acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'rddcdx.lib(dbfcdx1.obj)'
LINK : warning LNK4286: symbol '___acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'hbcplr.lib(hbcomp.obj)'
LINK : warning LNK4286: symbol '___acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'hbpp.lib(ppcore.obj)'
LINK : warning LNK4217: symbol '_abort' defined in 'libucrt.lib(abort.obj)' is imported by 'hbvm.lib(hvmall.obj)' in function '_add_segment'
LINK : warning LNK4217: symbol '_atoi' defined in 'libucrt.lib(atox.obj)' is imported by 'hbvm.lib(cmdarg.obj)' in function '_hb_cmdargNum'
LINK : warning LNK4286: symbol '_atoi' defined in 'libucrt.lib(atox.obj)' is imported by 'hbrdd.lib(wafunc.obj)'
LINK : warning LNK4286: symbol '_atoi' defined in 'libucrt.lib(atox.obj)' is imported by 'hbpp.lib(ppcore.obj)'
LINK : warning LNK4217: symbol '_ceil' defined in 'libucrt.lib(ceil_pentium4.obj)' is imported by 'rddntx.lib(dbfntx1.obj)' in function '_hb_ntxSortNew'
LINK : warning LNK4217: symbol '_ceil' defined in 'libucrt.lib(ceil_pentium4.obj)' is imported by 'rddcdx.lib(dbfcdx1.obj)' in function '_hb_cdxOrderCreate'
LINK : warning LNK4286: symbol '_ceil' defined in 'libucrt.lib(ceil_pentium4.obj)' is imported by 'hbct.lib(ctmath2.obj)'
LINK : warning LNK4217: symbol '_fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'rddcdx.lib(dbfcdx1.obj)' in function '_hb_cdxPageGetKeyVal'
LINK : warning LNK4286: symbol '_fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'hbcplr.lib(hbcomp.obj)'
LINK : warning LNK4286: symbol '_fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'hbpp.lib(ppcore.obj)'
LINK : warning LNK4217: symbol '__wfsopen' defined in 'libucrt.lib(fopen.obj)' is imported by 'hbcommon.lib(hbfopen.obj)' in function '_hb_fopen'
LINK : warning LNK4217: symbol '_qsort' defined in 'libucrt.lib(qsort.obj)' is imported by 'hbcplr.lib(hbmain.obj)' in function '_hb_compOptimizeJumps'
LINK : warning LNK4217: symbol '_fputc' defined in 'libucrt.lib(fputc.obj)' is imported by 'hbcplr.lib(genc.obj)' in function '_hb_compGenCFunc'
LINK : warning LNK4217: symbol '_fputc' defined in 'libucrt.lib(fputc.obj)' is imported by 'hbcplr.lib(gencc.obj)' in function '_hb_p_plus'
LINK : warning LNK4217: symbol '_fputc' defined in 'libucrt.lib(fputc.obj)' is imported by 'hbpp.lib(ppcore.obj)' in function '_hb_membufFree'
LINK : warning LNK4217: symbol '_fwrite' defined in 'libucrt.lib(fwrite.obj)' is imported by 'hbcplr.lib(genhrb.obj)' in function '_hb_compGenPortObj'
LINK : warning LNK4286: symbol '_fwrite' defined in 'libucrt.lib(fwrite.obj)' is imported by 'hbpp.lib(ppcore.obj)'
LINK : warning LNK4286: symbol '_fwrite' defined in 'libucrt.lib(fwrite.obj)' is imported by 'minizip.lib(ioapi.obj)'
LINK : warning LNK4217: symbol '_free' defined in 'libucrt.lib(free.obj)' is imported by 'hbpcre.lib(pcreglob.obj)' in function '_LocalPcreFree'
LINK : warning LNK4286: symbol '_free' defined in 'libucrt.lib(free.obj)' is imported by 'hbzlib.lib(zutil.obj)'
LINK : warning LNK4217: symbol '_malloc' defined in 'libucrt.lib(malloc.obj)' is imported by 'hbpcre.lib(pcreglob.obj)' in function '_LocalPcreMalloc'
LINK : warning LNK4286: symbol '_malloc' defined in 'libucrt.lib(malloc.obj)' is imported by 'hbzlib.lib(zutil.obj)'
LINK : warning LNK4217: symbol '_fread' defined in 'libucrt.lib(fread.obj)' is imported by 'hbpp.lib(ppcore.obj)' in function '_hb_pp_pragmaStreamFile'
LINK : warning LNK4286: symbol '_fread' defined in 'libucrt.lib(fread.obj)' is imported by 'minizip.lib(ioapi.obj)'
LINK : warning LNK4217: symbol '_fseek' defined in 'libucrt.lib(fseek.obj)' is imported by 'hbpp.lib(ppcore.obj)' in function '_hb_pp_pragmaStreamFile'
LINK : warning LNK4286: symbol '_fseek' defined in 'libucrt.lib(fseek.obj)' is imported by 'minizip.lib(ioapi.obj)'
LINK : warning LNK4217: symbol '_ftell' defined in 'libucrt.lib(ftell.obj)' is imported by 'hbpp.lib(ppcore.obj)' in function '_hb_pp_pragmaStreamFile'
LINK : warning LNK4286: symbol '_ftell' defined in 'libucrt.lib(ftell.obj)' is imported by 'minizip.lib(ioapi.obj)'
LINK : warning LNK4217: symbol '_fopen' defined in 'libucrt.lib(fopen.obj)' is imported by 'minizip.lib(ioapi.obj)' in function '_fopen64_file_func'
LINK : warning LNK4217: symbol '__fseeki64' defined in 'libucrt.lib(fseek.obj)' is imported by 'minizip.lib(ioapi.obj)' in function '_fseek64_file_func'
LINK : warning LNK4217: symbol '__ftelli64' defined in 'libucrt.lib(ftell.obj)' is imported by 'minizip.lib(ioapi.obj)' in function '_ftell64_file_func'
hbrtl.lib(fstemp.obj) : error LNK2019: unresolved external symbol __imp__modf referenced in function _hb_fsCreateTempEx
hbvm.lib(hvmall.obj) : error LNK2001: unresolved external symbol __imp__modf
hbcommon.lib(hbstr.obj) : error LNK2001: unresolved external symbol __imp__modf
hbcommon.lib(hbprintf.obj) : error LNK2001: unresolved external symbol __imp__modf
hbrtl.lib(arc4.obj) : error LNK2019: unresolved external symbol __imp__srand referenced in function _arc4_seed_rand
minizip.lib(zip.obj) : error LNK2001: unresolved external symbol __imp__srand
hbrtl.lib(arc4.obj) : error LNK2019: unresolved external symbol __imp__rand referenced in function _arc4_seed_rand
minizip.lib(zip.obj) : error LNK2001: unresolved external symbol __imp__rand
hbvm.lib(hvmall.obj) : error LNK2019: unresolved external symbol __imp___dclass referenced in function _hb_itemStrBuf
hbcommon.lib(hbprintf.obj) : error LNK2001: unresolved external symbol __imp___dclass
hbcommon.lib(hbprintf.obj) : error LNK2019: unresolved external symbol __imp___dsign referenced in function _hb_vsnprintf
hbct.lib(ctmath2.obj) : error LNK2019: unresolved external symbol __imp__floor referenced in function _HB_FUN_FLOOR
hbcplr.lib(hbmain.obj) : error LNK2019: unresolved external symbol __imp__fgetc referenced in function _hb_compReadClpFile
hbpp.lib(ppcore.obj) : error LNK2001: unresolved external symbol __imp__fgetc
hbpcre.lib(pcrecomp.obj) : error LNK2019: unresolved external symbol __imp__isdigit referenced in function _pcre_compile2
hbpp.lib(ppcore.obj) : error LNK2019: unresolved external symbol __imp__fputs referenced in function _hb_pp_dumpEnd
minizip.lib(zip.obj) : error LNK2019: unresolved external symbol __imp___time64 referenced in function _crypthead
minizip.lib(ioapi.obj) : error LNK2019: unresolved external symbol __imp__ferror referenced in function _ferror_file_func
MovieCenter.EXE - 19 error(es), 62 advertencia(s)
 

He reemplazado éstas LIBs de una versión de Junio2023 y compila perfecto.
Code: Select all  Expand view

hbcplr.lib
hbct.lib
hbmacro.lib
hbpcre.lib
hbpp.lib
hbrdd.lib
hbrtl.lib
hbvm.lib
hbzlib.lib
minizip.lib
rddcdx.lib
rddntx.lib
hbcommon.lib
xhb.lib
 

El conflicto es con la LIB libucrt.lib de msvc2022
Instalé la nueva version de msvc2022 Release 14.39.33519 y da el mismo error

Gracias por la ayuda
Saludos,

Adhemar C.
User avatar
acuellar
 
Posts: 1643
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Re: Error en librerias de Harbour MSVC

Postby Antonio Linares » Wed Apr 17, 2024 9:56 pm

Estimado Adhemar,

Tienes que enlazar la librería de MSVC ucrt.lib y añadir estos flags para el enlazador:

/NODEFAULTLIB:libucrt /NODEFAULTLIB:msvcrt

Ahora usamos la versión UCRT (en vez de la anterior MSVCRT) de MSVC que es más moderna y rápida
regards, saludos

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

Re: Error en librerias de Harbour MSVC

Postby acuellar » Thu Apr 18, 2024 10:30 am

Muchas gracias Estimado Antonio

Funcionó perfecto
Saludos,

Adhemar C.
User avatar
acuellar
 
Posts: 1643
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Re: Error en librerias de Harbour MSVC

Postby richard-service » Thu Apr 18, 2024 10:58 am

Antonio Linares wrote:Estimado Adhemar,

Tienes que enlazar la librería de MSVC ucrt.lib y añadir estos flags para el enlazador:

/NODEFAULTLIB:libucrt /NODEFAULTLIB:msvcrt

Ahora usamos la versión UCRT (en vez de la anterior MSVCRT) de MSVC que es más moderna y rápida


Dear Antonio,
You mean modify buildh32.bat file

echo ws2_32.lib >> msvc.tmp
echo shlwapi.lib >> msvc.tmp
echo strmiids.lib >> msvc.tmp

*NEW ADD
echo ucrt.lib >> msvc.tmp

IF EXIST %1.res echo %1.res >> msvc.tmp

//@link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:msvcrt

*MODIFY
@link @msvc.tmp /nologo /subsystem: windows /NODEFAULTLIB:libucrt
Best Regards,

Richard

Harbour 3.2.0dev (r2402101027) => Borland C++ v7.7 32bit
MySQL v8.0 /ADS v10
Harbour 3.2.0dev (r2011030937) => Borland C++ v7.4 64bit
User avatar
richard-service
 
Posts: 803
Joined: Tue Oct 16, 2007 8:57 am
Location: New Taipei City, Taiwan

Re: Error en librerias de Harbour MSVC

Postby Antonio Linares » Thu Apr 18, 2024 1:44 pm

Dear Richard,

yes, many thanks!
regards, saludos

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


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 43 guests