Page 2 of 3
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Thu Oct 10, 2024 12:36 pm
by Enrico Maria Giordano
Here it is (check the paths!):
Code: Select all | Expand
@ ECHO OFF
SET BCC=e:\fw\temp\bcc64\bcc
SET HRB=e:\fw\temp\bcc64\harbour
SET FWH=e:\fwharbour
SET LIB=-L%BCC%\lib;%BCC%\lib\psdk @%BCC%\bcc.rsp
SET HARBOURCMD=-a -es2 -gc0 -n -q -w3
IF EXIST %1.prg %HRB%\bin\harbour -i%FWH%\include -i%HRB%\include %1
IF EXIST %1.c %BCC%\bin\bcc64 -I%HRB%\include %1.c
IF EXIST %1.o %BCC%\bin\ilink64 -j%HRB%\lib c0w64 %1, %1, , %FWH%\lib\five64 %FWH%\lib\fivec64 @%HRB%\hrb.rsp %LIB%
IF EXIST %1.c DEL %1.c
IF EXIST %1.o DEL %1.o
IF EXIST %1.exe %1.exe
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Thu Oct 10, 2024 4:29 pm
by Jimmy
hi Enrico,
THX for your sample.
as i understand it right %1 stand for 1 x File, but my Apps have multiple Files.
so i need a *.MAK (for BCC) or *.HBP (for MSVC) Sample with different Drives for 64 Bit OS to make a 32 Bit App.
on Drive C: i have 64 Bit, and installed harbour 64 Bit/ FWH 64 Bit / BCC77 64 Bit and a Copy of Source CODE include \RES and a modify DUALGRID.MAK File.
on other Drive X: i have harbour 32 Bit/ FWH 32 BIt and BCC7 32 Bit
now i want to build a 32 Bit APP from 64 Bit OS so i call something like
Code: Select all | Expand
C:\64BIT>SET INCLUDE=x:\fwh\include\
x:\bcc7\bin\make -fDUALGRID.mak
in C:\64BIT\DUALGRID.MAK i have SET PATH to Drive X: 32 Bit Environment
that give me Error missing UUID.LIB which i don´t understand.
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Thu Oct 10, 2024 4:35 pm
by Enrico Maria Giordano
Please, first try my bacth with a single PRG and let me know if it works properly for you. Then I will show you how to compile many PRGs. It is very simple. You don't need a MAK file.
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Fri Oct 11, 2024 4:46 am
by Jimmy
hi Enrico,
Enrico Maria Giordano wrote:Please, first try my bacth with a single PRG and let me know if it works properly for you.
it does work like BUILDH.BAT.
i have no Problem to compile a single PRG.
i would like to know how to use multiple PRGs for a 32 Bit App under 64 Bit OS without a *.MAK (BCC) or *.HBP (MSVC)
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Fri Oct 11, 2024 4:49 am
by Antonio Linares
Dear Jimmy,
If you don't want to use HBP files then you can modify buildh.bat to compile and use more than one PRG
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Fri Oct 11, 2024 8:00 am
by Enrico Maria Giordano
Jimmy wrote:hi Enrico,
Enrico Maria Giordano wrote:Please, first try my bacth with a single PRG and let me know if it works properly for you.
it does work like BUILDH.BAT.
i have no Problem to compile a single PRG.
i would like to know how to use multiple PRGs for a 32 Bit App under 64 Bit OS without a *.MAK (BCC) or *.HBP (MSVC)
Sorry, Jimmy, I missed your point. What is the problem, exactly? I thought it was uuid.lib. If not, please show a sample reproducing it.
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Fri Oct 11, 2024 11:12 am
by Jimmy
hi Enrico,
Enrico Maria Giordano wrote:Please, first try my bacth with a single PRG and let me know if it works properly for you.
that give me this Error
In file included from C:\harbour\include\hbvmpub.h:50:
C:\harbour\include/hbdefs.h:50:10: fatal error: 'stdarg.h' file not found
#include <stdarg.h>
^
1 error generated.
Enrico Maria Giordano wrote:
Sorry, Jimmy, I missed your point.
What is the problem, exactly? I thought it was uuid.lib. If not, please show a sample reproducing it.
YES it is that UUID.LIB, in *.MAK File, are "not found" when start from 64 Bit OS
Source CODE and *.MAK file are on C: (64 bit OS)
while harbour 32 bit, FWH 32 Bit and BCC7 32 Bit are on Drive X:
my goX.BAT
Code: Select all | Expand
SET INCLUDE=x:\fwh\include
x:\bcc7\bin\make -fc:\fwh\0\LISTVIEW\DUALGRID.MAK
my DUALGRID.MAK ( on Drive C: in same Folder as Source)
Code: Select all | Expand
HBDIR=x:\harbour
BCDIR=x:\BCC7
FWDIR=x:\_fwh
#change these paths as needed
.path.OBJ = .\obj
.path.PRG = .\
.path.CH = $(FWDIR)\include;$(HBDIR)\include;$(BCDIR)\include\windows
.path.C = .\
.path.rc = .\
#important: Use Uppercase for filenames extensions, in the next two rules!
PRG = \
DUALGRID.PRG \
TGRID.PRG \
SHELLAPP.PRG \
HBEJECT.PRG \
CODEPAGE.PRG \
IPHONE.PRG \
PROPERTY.PRG \
EVERYTH.PRG \
ABOUT.PRG \
DLGREPL.PRG \
XBROWSE.PRG \
YBROWSE.PRG \
HBSTACK.PRG \
PICKLIST.PRG \
TCALENDA.PRG \
FWMODIFY.PRG \
FWREGDB.PRG \
XBROWSER.PRG \
DATAROW.PRG \
ADO.PRG \
XLSWRITE.PRG \
PGSUPORT.PRG \
HB_FUNC.PRG
PROJECT : DUALGRID.EXE
DUALGRID.exe : $(PRG:.PRG=.OBJ) DUALGRID.res
@echo off
echo $(BCDIR)\lib\c0w32.obj + > b32.bc
echo obj\DUALGRID.obj obj\TGRID.obj obj\HB_FUNC.obj obj\SHELLAPP.obj obj\HBEJECT.obj obj\CODEPAGE.obj obj\IPHONE.obj obj\PROPERTY.obj obj\EVERYTH.obj obj\ABOUT.obj obj\DLGREPL.obj obj\XBROWSE.obj obj\YBROWSE.obj obj\HBSTACK.obj obj\PICKLIST.obj obj\tcalenda.obj obj\FWMODIFY.obj obj\FWREGDB.obj obj\XBROWSER.obj obj\DATAROW.obj obj\ADO.obj obj\XLSWRITE.OBJ obj\PGSUPORT.OBJ , + >> b32.bc
echo DUALGRID.exe, + >> b32.bc
echo DUALGRID.map, + >> b32.bc
echo $(FWDIR)\lib\FiveH.lib $(FWDIR)\lib\FiveHC.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbrtl.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbvmmt.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\gtgui.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hblang.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbmacro.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbrdd.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\rddntx.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\rddcdx.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\rddfpt.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbsix.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbdebug.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbcommon.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbpp.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbwin.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbcpage.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbct.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbpcre.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbcplr.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\xhb.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbziparc.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbmzip.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbzlib.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\minizip.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\png.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbusrrdd.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbtip.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbzebra.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbcurl.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\libcurl.lib + >> b32.bc
echo $(HBDIR)\lib\win\bcc\hbxpp.lib + >> b32.bc
echo $(FWDIR)\lib\dolphin.lib + >> b32.bc
echo $(FWDIR)\lib\DrXlsx32_bcc.lib + >> b32.bc
echo $(BCDIR)\lib\UUID.LIB + >> b32.bc
echo $(BCDIR)\lib\cw32mt.lib + >> b32.bc
echo $(BCDIR)\lib\ws2_32.lib + >> b32.bc
echo $(BCDIR)\lib\import32.lib + >> b32.bc
echo $(BCDIR)\lib\psdk\odbc32.lib + >> b32.bc
echo $(BCDIR)\lib\psdk\nddeapi.lib + >> b32.bc
echo $(BCDIR)\lib\psdk\iphlpapi.lib + >> b32.bc
echo $(BCDIR)\lib\psdk\msimg32.lib + >> b32.bc
echo $(BCDIR)\lib\psdk\psapi.lib + >> b32.bc
echo $(BCDIR)\lib\psdk\rasapi32.lib + >> b32.bc
echo $(BCDIR)\lib\psdk\gdiplus.lib + >> b32.bc
echo $(BCDIR)\lib\psdk\shell32.lib, >> b32.bc
IF EXIST DUALGRID.res echo DUALGRID.res >> b32.bc
$(BCDIR)\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
del b32.bc
.PRG.OBJ:
$(HBDIR)\bin\harbour $< /N /W /Oobj\ /I$(FWDIR)\include;$(HBDIR)\include;$(BCDIR)\include\windows
$(BCDIR)\bin\bcc32 -c -tWM -I$(HBDIR)\include -oobj\$& obj\$&.c
.C.OBJ:
echo -c -tWM -D__HARBOUR__ -DHB_API_MACROS > tmp
echo -I$(HBDIR)\include;$(FWDIR)\include >> tmp
$(BCDIR)\bin\bcc32 -oobj\$& @tmp $&.c
del tmp
DUALGRID.res : DUALGRID.rc
$(BCDIR)\bin\brc32.exe -r DUALGRID.rc
give me Error
...
echo x:\BCC7\lib\UUID.LIB + >> b32.bc
...
x:\BCC7\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
Turbo Incremental Link 6.70 Copyright (c) 1997-2014 Embarcadero Technologies, Inc.
Fatal: Unable to open file 'UUID.LIB'
but UUID.LIB does exist in that Folder
c:\fwh\0\TGRID32>dir x:\BCC7\lib\UUID.LI*
Verzeichnis von x:\BCC7\lib
19.03.2015 06:55 2.048 uuid.lib
the *.MAK file is the same as on drive X:, which does NOT make Error, only PATH are changed.
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Fri Oct 11, 2024 12:01 pm
by Enrico Maria Giordano
Jimmy wrote:hi Enrico,
Enrico Maria Giordano wrote:Please, first try my bacth with a single PRG and let me know if it works properly for you.
that give me this Error
In file included from C:\harbour\include\hbvmpub.h:50:
C:\harbour\include/hbdefs.h:50:10: fatal error: 'stdarg.h' file not found
#include <stdarg.h>
^
1 error generated.
Copy this file bcc64.cfg in the same folder of bcc64.exe:
Code: Select all | Expand
-I@\..\include\windows\crtl;@\..\include\windows\sdk;@\..\include\dinkumware64
-O
-O1
-c
-d
-g0
-Wno-visibility
-Wno-macro-redefined
-Wno-microsoft-anon-tag
-Wno-ignored-attributes
-Wno-dangling-else
-Wno-user-defined-literals
-w
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Fri Oct 11, 2024 12:02 pm
by Enrico Maria Giordano
Remove -w, sorry.
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Sun Oct 13, 2024 10:01 am
by Enrico Maria Giordano
Hi Jimmy,
I'm still waiting for your answer...
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Mon Oct 14, 2024 3:53 am
by Jimmy
hi Enrico,
Enrico Maria Giordano wrote:I'm still waiting for your answer...
THX for your help.
your Sample seems to use 64 Bit BCC Tools,
Code: Select all | Expand
IF EXIST % 1.c %BCC%\bin\bcc64 -I%HRB%\include % 1.c
IF EXIST % 1.o %BCC%\bin\ilink64 -j%HRB%\lib c0w64 % 1, % 1, , %FWH%\lib\five64 %FWH%\lib
but my Problem are 32 Bit Apps
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Mon Oct 14, 2024 8:00 am
by Enrico Maria Giordano
This is the batch for BCC32:
Code: Select all | Expand
@ ECHO OFF
SET BCC=e:\fw\temp\bcc32\bcc
SET HRB=e:\fw\temp\bcc32\harbour
SET FWH=e:\fwharbour
SET LIB=-L%BCC%\lib;%BCC%\lib\psdk @%BCC%\bcc.rsp
SET HARBOURCMD=-a -es2 -gc0 -n -q -w3
IF EXIST %1.prg %HRB%\bin\harbour -i%FWH%\include -i%HRB%\include %1
IF EXIST %1.c %BCC%\bin\bcc32 -I%HRB%\include %1.c
IF EXIST %1.obj %BCC%\bin\ilink32 -L%HRB%\lib c0w32 %1, %1, , %FWH%\lib\fiveh %FWH%\lib\fivehc @%HRB%\hrb.rsp %LIB%
IF EXIST %1.c DEL %1.c
IF EXIST %1.obj DEL %1.obj
IF EXIST %1.tds DEL %1.tds
IF EXIST %1.exe %1.exe
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Mon Oct 14, 2024 8:34 am
by Jimmy
hi Enrico,
Enrico Maria Giordano wrote:This is the batch for BCC32:
THX, i will test it if it work FROM 64 BIt OS to make a 32 Bit App.
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Mon Oct 14, 2024 8:43 am
by Enrico Maria Giordano
Yes, it works.
Re: why, under 64 Bit OS, does not Find UUID.LIB
Posted: Mon Oct 14, 2024 8:45 am
by Jimmy
hi Enrico,
i got this when try it
Error E2356 DRXLS.prg 16: Type mismatch in redeclaration of '_streams'
Error E2344 c:\bcc7\include\windows\crtl\stdio.h 146: Earlier declaration of '_streams'
*** 2 errors in Compile ***
and it seems me still for 1 PRG ONLY, but i need it for multiple PRG so i try to use *.MAK.