Page 1 of 2
Makefile para Borland
Posted:
Wed Jul 23, 2014 10:53 pm
by Antonio Linares
go.bat
- Code: Select all Expand view
if not exist obj md obj
c:\bcc582\bin\make -ftest.mak
test.mak
- Code: Select all Expand view
#Borland make sample, (c) FiveTech Software 2005-2014
HBDIR=c:\harbour
BCDIR=c:\bcc582
FWDIR=c:\fwh
#change these paths as needed
.path.OBJ = .\obj
.path.PRG = .\
.path.CH = $(FWDIR)\include;$(HBDIR)\include
.path.C = .\
.path.rc = .\
#important: Use Uppercase for filenames extensions, in the next two rules!
PRG = \
ONE.PRG \
TWO.PRG \
THREE.PRG
PROJECT : MyApp.exe
MyApp.exe : $(PRG:.PRG=.OBJ) MyApp.res
echo off
echo $(BCDIR)\lib\c0w32.obj + > b32.bc
echo $(PRG:.PRG=.OBJ), + >> b32.bc, + >> b32.bc
echo MyApp.exe, + >> b32.bc
echo MyApp.map, + >> b32.bc
echo $(FWDIR)\lib\FiveH.lib $(FWDIR)\lib\FiveHC.lib + >> b32.bc
echo $(HBDIR)\lib\hbrtl.lib + >> b32.bc
echo $(HBDIR)\lib\hbvm.lib + >> b32.bc
echo $(HBDIR)\lib\gtgui.lib + >> b32.bc
echo $(HBDIR)\lib\hblang.lib + >> b32.bc
echo $(HBDIR)\lib\hbmacro.lib + >> b32.bc
echo $(HBDIR)\lib\hbrdd.lib + >> b32.bc
echo $(HBDIR)\lib\rddntx.lib + >> b32.bc
echo $(HBDIR)\lib\rddcdx.lib + >> b32.bc
echo $(HBDIR)\lib\rddfpt.lib + >> b32.bc
echo $(HBDIR)\lib\hbsix.lib + >> b32.bc
echo $(HBDIR)\lib\hbdebug.lib + >> b32.bc
echo $(HBDIR)\lib\hbcommon.lib + >> b32.bc
echo $(HBDIR)\lib\hbpp.lib + >> b32.bc
echo $(HBDIR)\lib\hbwin.lib + >> b32.bc
echo $(HBDIR)\lib\hbcpage.lib + >> b32.bc
echo $(HBDIR)\lib\hbct.lib + >> b32.bc
echo $(BCDIR)\lib\cw32.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\rasapi32.lib, >> b32.bc
IF EXIST MyApp.res echo MyApp.res >> b32.bc
$(BCDIR)\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
del b32.bc
.PRG.OBJ:
$(HBDIR)\bin\harbour $< /L /N /W /Oobj\ /I$(FWDIR)\include;$(HBDIR)\include
$(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
MyApp.res : MyApp.rc
$(BCDIR)\bin\brc32.exe -r MyApp.rc
Re: Makefile para Borland
Posted:
Wed Jul 30, 2014 1:03 pm
by karinha
Maestro, que está mal para xHarbour? Como debe ser el TEST.MAK para xHarbour?
- Code: Select all Expand view
#Borland make sample, (c) FiveTech Software 2005-2014
HDIRL=c:\xhb280714
BCDIR=c:\bcc582
FWDIR=c:\fwh1306
#change these paths as needed
.path.OBJ = .\obj
.path.PRG = .\
.path.CH = $(FWDIR)\include;$(HBDIR)\include
.path.C = .\
.path.rc = .\
#important: Use Uppercase for filenames extensions, in the next two rules!
PRG = \
TUTOR04
#REM ONE.PRG \
#REM TWO.PRG \
#REM THREE.PRG
PROJECT : TUTOR04.exe
TUTOR04.exe : $(PRG:.PRG=.OBJ) TUTOR04.res
echo off
echo $(BCDIR)\lib\c0w32.obj + > b32.bc
echo $(PRG:.PRG=.OBJ), + >> b32.bc, + >> b32.bc
echo TUTOR04.exe, + >> b32.bc
echo TUTOR04.map, + >> b32.bc
echo $(FWDIR)\lib\FiveHx.lib $(FWDIR)\lib\FiveHC.lib + >> b32.bc
echo %hdirl%\rtl.lib + >> b32.bc
echo %hdirl%\vm.lib + >> b32.bc
echo %hdirl%\%GT%.lib + >> b32.bc
echo %hdirl%\lang.lib + >> b32.bc
echo %hdirl%\codepage.lib + >> b32.bc
echo %hdirl%\macro.lib + >> b32.bc
echo %hdirl%\rdd.lib + >> b32.bc
echo %hdirl%\dbfntx.lib + >> b32.bc
echo %hdirl%\dbfcdx.lib + >> b32.bc
echo %hdirl%\dbffpt.lib + >> b32.bc
echo %hdirl%\hbsix.lib + >> b32.bc
echo %hdirl%\debug.lib + >> b32.bc
echo %hdirl%\common.lib + >> b32.bc
echo %hdirl%\pp.lib + >> b32.bc
echo %hdirl%\pcrepos.lib + >> b32.bc
echo %hdirl%\ct.lib + >> b32.bc
echo %hdirl%\zlib.lib + >> b32.bc
echo %hdirl%\hbzip.lib + >> b32.bc
echo %hdirl%\libmisc.lib + >> b32.bc
echo %hdirl%\tip.lib + >> b32.bc
echo %hdirl%\png.lib + >> b32.bc
echo $(BCDIR)\lib\cw32.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\rasapi32.lib, >> b32.bc
IF EXIST TUTOR04.res echo TUTOR04.res >> b32.bc
$(BCDIR)\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
del b32.bc
.PRG.OBJ:
$(HBDIR)\bin\harbour $< /L /N /W /Oobj\ /I$(FWDIR)\include;$(HBDIR)\include
$(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
TUTOR04.res : TUTOR04.rc
$(BCDIR)\bin\brc32.exe -r TUTOR04.rc
Gracias.
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 9:22 am
by Baxajaun
Antonio,
muchísimas gracias amigo.
Un abrazo
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 9:30 am
by Antonio Linares
João,
Que error te dá ?
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 11:58 am
by karinha
- Code: Select all Expand view
C:\FWH1306\samples>if not exist obj md obj
C:\FWH1306\samples>c:\bcc582\bin\make -ftest.mak
MAKE Version 5.2 Copyright (c) 1987, 2000 Borland
Fatal: 'TUTOR04' does not exist - don't know how to make it
C:\FWH1306\samples>
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 3:13 pm
by Antonio Linares
Here you are missing ".PRG"
PRG = \
TUTOR04.PRG
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 3:58 pm
by karinha
C:\FWH1306\samples>if not exist obj md obj
C:\FWH1306\samples>c:\bcc582\bin\make -ftest.mak
MAKE Version 5.2 Copyright (c) 1987, 2000 Borland
echo off
echo c:\bcc582\lib\c0w32.obj + > b32.bc
echo TUTOR04.OBJ, + >> b32.bc, + >> b32.bc
echo TUTOR04.exe, + >> b32.bc
echo TUTOR04.map, + >> b32.bc
echo c:\fwh1306\lib\FiveHx.lib c:\fwh1306\lib\FiveHC.lib + >> b32.bc
echo %hdirl%\rtl.lib + >> b32.bc
echo %hdirl%\vm.lib + >> b32.bc
echo %hdirl%\%GT%.lib + >> b32.bc
echo %hdirl%\lang.lib + >> b32.bc
echo %hdirl%\codepage.lib + >> b32.bc
echo %hdirl%\macro.lib + >> b32.bc
echo %hdirl%\rdd.lib + >> b32.bc
echo %hdirl%\dbfntx.lib + >> b32.bc
echo %hdirl%\dbfcdx.lib + >> b32.bc
echo %hdirl%\dbffpt.lib + >> b32.bc
echo %hdirl%\hbsix.lib + >> b32.bc
echo %hdirl%\debug.lib + >> b32.bc
echo %hdirl%\common.lib + >> b32.bc
echo %hdirl%\pp.lib + >> b32.bc
echo %hdirl%\pcrepos.lib + >> b32.bc
echo %hdirl%\ct.lib + >> b32.bc
echo %hdirl%\zlib.lib + >> b32.bc
echo %hdirl%\hbzip.lib + >> b32.bc
echo %hdirl%\libmisc.lib + >> b32.bc
echo %hdirl%\tip.lib + >> b32.bc
echo %hdirl%\png.lib + >> b32.bc
echo c:\bcc582\lib\cw32.lib + >> b32.bc
echo c:\bcc582\lib\import32.lib + >> b32.bc
echo c:\bcc582\lib\psdk\odbc32.lib + >> b32.bc
echo c:\bcc582\lib\psdk\nddeapi.lib + >> b32.bc
echo c:\bcc582\lib\psdk\iphlpapi.lib + >> b32.bc
echo c:\bcc582\lib\psdk\msimg32.lib + >> b32.bc
echo c:\bcc582\lib\psdk\rasapi32.lib, >> b32.bc
IF EXIST TUTOR04.res echo TUTOR04.res >> b32.bc
c:\bcc582\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
Turbo Incremental Link 5.69 Copyright (c) 1997-2005 Borland
Fatal: Too many DEF file names: c:\fwh1306\lib\FiveHC.lib
** error 2 ** deleting TUTOR04.exe
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 4:08 pm
by Antonio Linares
This line is wrong:
echo TUTOR04.OBJ, + >> b32.bc, + >> b32.bc
it should be:
echo TUTOR04.OBJ, + >> b32.bc
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 4:25 pm
by karinha
- Code: Select all Expand view
#Borland make sample, (c) FiveTech Software 2005-2014
HDIRL=c:\xhb280714
BCDIR=c:\bcc582
FWDIR=c:\fwh1306
#change these paths as needed
.path.OBJ = .\obj
.path.PRG = .\
.path.CH = $(FWDIR)\include;$(HDIRL)\include
.path.C = .\
.path.rc = .\
#important: Use Uppercase for filenames extensions, in the next two rules!
PRG = \
TUTOR04.PRG
#REM ONE.PRG \
#REM TWO.PRG \
#REM THREE.PRG
PROJECT : TUTOR04.exe
TUTOR04.exe : $(PRG:.PRG=.OBJ) TUTOR04.res
echo off
echo $(BCDIR)\lib\c0w32.obj + > b32.bc
echo $(PRG:.PRG=.OBJ), + >> b32.bc
echo TUTOR04.exe, + >> b32.bc
echo TUTOR04.map, + >> b32.bc
echo $(FWDIR)\lib\FiveHx.lib $(FWDIR)\lib\FiveHC.lib + >> b32.bc
echo %hdirl%\rtl.lib + >> b32.bc
echo %hdirl%\vm.lib + >> b32.bc
echo %hdirl%\%GT%.lib + >> b32.bc
echo %hdirl%\lang.lib + >> b32.bc
echo %hdirl%\codepage.lib + >> b32.bc
echo %hdirl%\macro.lib + >> b32.bc
echo %hdirl%\rdd.lib + >> b32.bc
echo %hdirl%\dbfntx.lib + >> b32.bc
echo %hdirl%\dbfcdx.lib + >> b32.bc
echo %hdirl%\dbffpt.lib + >> b32.bc
echo %hdirl%\hbsix.lib + >> b32.bc
echo %hdirl%\debug.lib + >> b32.bc
echo %hdirl%\common.lib + >> b32.bc
echo %hdirl%\pp.lib + >> b32.bc
echo %hdirl%\pcrepos.lib + >> b32.bc
echo %hdirl%\ct.lib + >> b32.bc
echo %hdirl%\zlib.lib + >> b32.bc
echo %hdirl%\hbzip.lib + >> b32.bc
echo %hdirl%\libmisc.lib + >> b32.bc
echo %hdirl%\tip.lib + >> b32.bc
echo %hdirl%\png.lib + >> b32.bc
echo $(BCDIR)\lib\cw32.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\rasapi32.lib, >> b32.bc
IF EXIST TUTOR04.res echo TUTOR04.res >> b32.bc
$(BCDIR)\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
del b32.bc
.PRG.OBJ:
$(HDIRL)\bin\harbour $< /L /N /W /Oobj\ /I$(FWDIR)\include;$(HDIRL)\include
$(BCDIR)\bin\bcc32 -c -tWM -I$(HDIRL)\include -oobj\$& obj\$&.c
.C.OBJ:
echo -c -tWM -D__HARBOUR__ -DHB_API_MACROS > tmp
echo -I$(HDIRL)\include;$(FWDIR)\include >> tmp
$(BCDIR)\bin\bcc32 -oobj\$& @tmp $&.c
del tmp
TUTOR04.res : TUTOR04.rc
$(BCDIR)\bin\brc32.exe -r TUTOR04.rc
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 4:25 pm
by karinha
C:\FWH1306\samples>if not exist obj md obj
C:\FWH1306\samples>c:\bcc582\bin\make -ftest.mak
MAKE Version 5.2 Copyright (c) 1987, 2000 Borland
echo off
echo c:\bcc582\lib\c0w32.obj + > b32.bc
echo TUTOR04.OBJ, + >> b32.bc
echo TUTOR04.exe, + >> b32.bc
echo TUTOR04.map, + >> b32.bc
echo c:\fwh1306\lib\FiveHx.lib c:\fwh1306\lib\FiveHC.lib + >> b32.bc
echo %hdirl%\rtl.lib + >> b32.bc
echo %hdirl%\vm.lib + >> b32.bc
echo %hdirl%\%GT%.lib + >> b32.bc
echo %hdirl%\lang.lib + >> b32.bc
echo %hdirl%\codepage.lib + >> b32.bc
echo %hdirl%\macro.lib + >> b32.bc
echo %hdirl%\rdd.lib + >> b32.bc
echo %hdirl%\dbfntx.lib + >> b32.bc
echo %hdirl%\dbfcdx.lib + >> b32.bc
echo %hdirl%\dbffpt.lib + >> b32.bc
echo %hdirl%\hbsix.lib + >> b32.bc
echo %hdirl%\debug.lib + >> b32.bc
echo %hdirl%\common.lib + >> b32.bc
echo %hdirl%\pp.lib + >> b32.bc
echo %hdirl%\pcrepos.lib + >> b32.bc
echo %hdirl%\ct.lib + >> b32.bc
echo %hdirl%\zlib.lib + >> b32.bc
echo %hdirl%\hbzip.lib + >> b32.bc
echo %hdirl%\libmisc.lib + >> b32.bc
echo %hdirl%\tip.lib + >> b32.bc
echo %hdirl%\png.lib + >> b32.bc
echo c:\bcc582\lib\cw32.lib + >> b32.bc
echo c:\bcc582\lib\import32.lib + >> b32.bc
echo c:\bcc582\lib\psdk\odbc32.lib + >> b32.bc
echo c:\bcc582\lib\psdk\nddeapi.lib + >> b32.bc
echo c:\bcc582\lib\psdk\iphlpapi.lib + >> b32.bc
echo c:\bcc582\lib\psdk\msimg32.lib + >> b32.bc
echo c:\bcc582\lib\psdk\rasapi32.lib, >> b32.bc
IF EXIST TUTOR04.res echo TUTOR04.res >> b32.bc
c:\bcc582\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
Turbo Incremental Link 5.69 Copyright (c) 1997-2005 Borland
Fatal: Unable to open file 'TUTOR04.OBJ'
** error 2 ** deleting TUTOR04.exe
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 6:20 pm
by Antonio Linares
João,
Are harbour.exe and bcc32.exe being called ?
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 6:30 pm
by karinha
Si maestro, BUILDX.BAT compila normal.
Maestro prefiero que usted hable en español es más fácil de entender.
Saludos.
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 6:41 pm
by Antonio Linares
João,
Discúlpame, como me toca usar ambos idiomas, a veces me lio
Te decia si harbour.exe y bcc32.exe se llegan a llamar correctamente ?
Re: Makefile para Borland
Posted:
Thu Jul 31, 2014 7:19 pm
by karinha
Aparentemente si maestro.
Este otro ejemplo, también no founciona.
- Code: Select all Expand view
#Borland make sample, (c) FiveTech Software 2005-2009
HBDIR=c:\XHB280714
BCDIR=c:\BCC582
FWDIR=c:\FWH1306
#change these paths as needed
.path.OBJ = .\obj
.path.PRG = .\
.path.CH = $(FWDIR)\include;$(HBDIR)\include
.path.C = .\
.path.rc = .\
#important: Use Uppercase for filenames extensions, in the next two rules!
PRG = \
TUTOR04.PRG
C = \
TUTOR04.C
PROJECT : TUTOR04.exe
TUTOR04.exe : $(PRG:.PRG=.OBJ) TUTOR04.res
echo off
echo $(BCDIR)\lib\c0w32.obj + > b32.bc
echo $(PRG:.PRG=.OBJ), + >> b32.bc
echo TUTOR04.exe, + >> b32.bc
echo TUTOR04.map, + >> b32.bc
echo $(FWDIR)\lib\FiveHx.lib $(FWDIR)\lib\FiveHC.lib + >> b32.bc
echo %HBDIR%\rtl.lib + >> b32.bc
echo %HBDIR%\vm.lib + >> b32.bc
echo %HBDIR%\%GT%.lib + >> b32.bc
echo %HBDIR%\lang.lib + >> b32.bc
echo %HBDIR%\codepage.lib + >> b32.bc
echo %HBDIR%\macro.lib + >> b32.bc
echo %HBDIR%\rdd.lib + >> b32.bc
echo %HBDIR%\dbfntx.lib + >> b32.bc
echo %HBDIR%\dbfcdx.lib + >> b32.bc
echo %HBDIR%\dbffpt.lib + >> b32.bc
echo %HBDIR%\hbsix.lib + >> b32.bc
echo %HBDIR%\debug.lib + >> b32.bc
echo %HBDIR%\common.lib + >> b32.bc
echo %HBDIR%\pp.lib + >> b32.bc
echo %HBDIR%\pcrepos.lib + >> b32.bc
echo %HBDIR%\ct.lib + >> b32.bc
echo %HBDIR%\zlib.lib + >> b32.bc
echo %HBDIR%\hbzip.lib + >> b32.bc
echo %HBDIR%\libmisc.lib + >> b32.bc
echo %HBDIR%\tip.lib + >> b32.bc
echo %HBDIR%\png.lib + >> b32.bc
echo $(BCDIR)\lib\cw32.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\rasapi32.lib, >> b32.bc
IF EXIST TUTOR04.res echo TUTOR04.res >> b32.bc
$(BCDIR)\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
del b32.bc
.PRG.OBJ:
$(HBDIR)\bin\harbour $< /L /N /W /Oobj\ /I$(FWDIR)\include;$(HBDIR)\include
$(BCDIR)\bin\bcc32 -M -c -v -O2 -I$(HBDIR)\include -oobj\$& obj\$&.c
#$(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
TUTOR04.res : TUTOR04.rc
$(BCDIR)\bin\brc32.exe -r TUTOR04.rc
Gracias, saludos.
Re: Makefile para Borland
Posted:
Fri Aug 01, 2014 1:04 am
by Antonio Linares
João,
Cuando dices que no funciona, a que te refieres ?
Que el EXE se construye pero no arranca ?
En caso de ser asi, usar el debugger de bajo nivel de Visual Studio serviría para ver que está pasando y donde y por qué se aborta la ejecución.