Buen dia
Por favor podria alguien darme un ejemplo de un .bat y un .mak para compilar xon xHarbour ?
FWH 25.12
Harbour/Hbmk2
Microsoft Visual C++
MySql 8.0
Antigravity
Buen dia
Por favor podria alguien darme un ejemplo de un .bat y un .mak para compilar xon xHarbour ?
FWH 25.12
Harbour/Hbmk2
Microsoft Visual C++
MySql 8.0
Antigravity
@ECHO OFF
CLS
ECHO ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
ECHO ³ FiveWin for xHarbour 16.03 - Mar. 2016 xHarbour development power ³Ü
ECHO ³ (c) FiveTech 1993-2016 for Microsoft Windows 9X/NT/200X/ME/XP/Vista/7/8/10 ³Û
ECHO ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙÛ
ECHO ÿ ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
if A%1 == A GOTO :SINTAX
if NOT EXIST %1.prg GOTO :NOEXIST
ECHO Compiling...
if "%FWDIR%" == "" set FWDIR=.\..\
if "%XHDIR%" == "" set XHDIR=c:\xharbour
rem if "%2" == "/b" set GT=gtwin
rem if not "%2" == "/b" set GT=gtgui
set GT=gtgui
set hdir=%XHDIR%
set hdirl=%hdir%\lib
set bcdir=c:\bcc7
set fwh=%FWDIR%
%hdir%\bin\harbour %1 /n /i%fwh%\include;%hdir%\include /w /p %2 %3 > comp.log 2> warnings.log
IF ERRORLEVEL 1 GOTO COMPILEERRORS
@type comp.log
@type warnings.log
echo -O2 -e%1.exe -I%hdir%\include -I%bcdir%\include %1.c > b32.bc
%bcdir%\bin\bcc32 -M -c -v @b32.bc
:ENDCOMPILE
IF EXIST %1.rc %bcdir%\bin\brc32 -r -I%bcdir%\include %1
echo %bcdir%\lib\c0w32.obj + > b32.bc
echo %1.obj, + >> b32.bc
echo %1.exe, + >> b32.bc
echo %1.map, + >> b32.bc
echo %fwh%\lib\Fivehx.lib %fwh%\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%\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
rem Uncomment these two lines to use Advantage RDD
rem echo %hdir%\lib\rddads.lib + >> b32.bc
rem echo %hdir%\lib\Ace32.lib + >> b32.bc
echo %bcdir%\lib\cw32.lib + >> b32.bc
echo %bcdir%\lib\import32.lib + >> b32.bc
echo %bcdir%\lib\uuid.lib + >> b32.bc
echo %bcdir%\lib\ws2_32.lib + >> b32.bc
echo %bcdir%\lib\psdk\odbc32.lib + >> b32.bc
echo %bcdir%\lib\psdk\rasapi32.lib + >> b32.bc
echo %bcdir%\lib\psdk\nddeapi.lib + >> b32.bc
echo %bcdir%\lib\psdk\msimg32.lib + >> b32.bc
echo %bcdir%\lib\psdk\psapi.lib + >> b32.bc
echo %bcdir%\lib\psdk\gdiplus.lib + >> b32.bc
echo %bcdir%\lib\psdk\iphlpapi.lib + >> b32.bc
echo %bcdir%\lib\psdk\shell32.lib, >> b32.bc
IF EXIST %1.res echo %1.res >> b32.bc
rem uncomment this line to use the debugger and comment the following one
if %GT% == gtwin %bcdir%\bin\ilink32 -Gn -Tpe -s -v @b32.bc
IF ERRORLEVEL 1 GOTO LINKERROR
if %GT% == gtgui %bcdir%\bin\ilink32 -Gn -aa -Tpe -s -v @b32.bc
IF ERRORLEVEL 1 GOTO LINKERROR
ECHO * Application successfully built *
%1
GOTO EXIT
ECHO
rem delete temporary files
@del %1.c
:COMPILEERRORS
@type comp.log
ECHO * Compile errors *
GOTO EXIT
:LINKERROR
ECHO * Linking errors *
GOTO EXIT
:SINTAX
ECHO SYNTAX: Build [Program] {-- No especifiques la extensi¢n PRG
ECHO {-- Don't specify .PRG extension
GOTO EXIT
:NOEXIST
ECHO The specified PRG %1 does not exist
:EXITQue compilador de C vas a utilizar ?
Asi podremos saber que fichero .mak proporcionarte
bcc582
FWH 25.12
Harbour/Hbmk2
Microsoft Visual C++
MySql 8.0
Antigravity
if exist VENTAS.exe del VENTAS.exe
if not exist obj md obj
c:\bcc582\bin\make -fVENTAS.rmk
if exist VENTAS.exe VENTAS.exe#Borland make sample, (c) SysCtrl 2003-2016
HBDIR=\XHB1306
BCDIR=\bcc582
FWDIR=\FWH1306
#cambiar estos path a sus necesidades
#LOS ARCHIVOS .CH PERSONALES COPIARLOS A INCLUDE DE FWH
.path.OBJ = .\obj
.path.PRG = .\prg
.path.CH Â = $(FWDIR)\include;$(HBDIR)\include
.path.C Â = .\prg
.path.rc  = .\res
#Archivos PRG.s que se compilan!
PRG = Â Â Â Â Â \
VENTAS.PRG Â \
BANNER.PRG Â Â \
BARLIB.PRG Â Â \
CODABAR.PRG Â Â \
CODE3DE9.PRG Â \
CODE128.PRG Â Â \
EAN13.PRG Â Â Â \
GO_CODE.PRG Â Â \
INT25.PRG Â Â Â \
#Archivos de c++ que se compilan!
C = Â \
PROJECT Â Â : VENTAS.exe
VENTAS.exe  : $(PRG:.PRG=.OBJ) $(C:.C=.OBJ) .\res\VENTAS.res
  echo off
  echo $(BCDIR)\lib\c0w32.obj + > b32.bc
  echo obj\VENTAS.obj   \
    obj\BANNER.obj   \
    obj\BARLIB.obj   \
    obj\CODABAR.obj  \
    obj\CODE3DE9.obj  \
    obj\CODE128.obj  \
    obj\EAN13.obj   \
    obj\GO_CODE.obj  \
    obj\INT25.obj, + >> b32.bc
  echo VENTAS.exe, + >> b32.bc
  echo VENTAS.map, + >> b32.bc
  rem librerias de terceros
  rem echo C:\dolphin\TDOLPHIN\LIB\dolphinx.LIB  + >> b32.bc
  rem echo C:\dolphin\tdolphin\LIB\mysql\omf\libmysql.LIB  + >> b32.bc
  REM echo C:\fwh\LIB\ttaskpanel.LIB  + >> b32.bc
  REM echo C:\fwh\LIB\pdfing.LIB    + >> b32.bc
  echo $(FWDIR)\lib\FiveHx.lib $(FWDIR)\lib\FiveHC.lib + >> b32.bc
  echo $(HBDIR)\lib\rtl.lib    + >> b32.bc
  echo $(HBDIR)\lib\vm.lib    + >> b32.bc
  echo $(HBDIR)\lib\gtgui.lib    + >> b32.bc
  echo $(HBDIR)\lib\lang.lib   + >> b32.bc
  echo $(HBDIR)\lib\macro.lib   + >> b32.bc
  echo $(HBDIR)\lib\rdd.lib    + >> b32.bc
  echo $(HBDIR)\lib\dbfntx.lib  + >> b32.bc
  echo $(HBDIR)\lib\dbfcdx.lib  + >> b32.bc
  echo $(HBDIR)\lib\dbffpt.lib  + >> b32.bc
  echo $(HBDIR)\lib\hbsix.lib   + >> b32.bc
  echo $(HBDIR)\lib\debug.lib   + >> b32.bc
  echo $(HBDIR)\lib\common.lib  + >> b32.bc
  echo $(HBDIR)\lib\pp.lib    + >> b32.bc
  echo $(HBDIR)\lib\codepage.lib + >> b32.bc
  echo $(HBDIR)\lib\ct.lib    + >> b32.bc
  echo $(HBDIR)\lib\pcrepos.lib  + >> b32.bc
  echo $(HBDIR)\lib\zlib.lib   + >> b32.bc
  echo $(HBDIR)\lib\hbzip.lib   + >> b32.bc
  echo $(HBDIR)\lib\libmisc.lib  + >> b32.bc
  echo $(HBDIR)\lib\tip.lib    + >> b32.bc
  echo $(HBDIR)\lib\png.lib    + >> b32.bc
  rem echo c:\XHB1006\lib\pdfing.lib + >> b32.bc
  rem echo C:\XHB1006\LIB\HBZIP.LIB  + >> b32.bc
  rem echo C:\XHB1006\LIB\ZLIB.LIB  + >> b32.bc
  rem quitar el comentario en estas 2 lineas si se usa Advantage RDD
  REM echo $(HBDIR)\lib\rddads.lib + >> b32.bc
  REM echo $(HBDIR)\lib\Ace32.lib + >> b32.bc
  REM echo $(FWDIR)\lib\dolphinx.lib + >> b32.bc
  REM echo $(FWDIR)\lib\libmysql.lib + >> b32.bc
  echo $(BCDIR)\lib\cw32.lib      + >> b32.bc
  echo $(BCDIR)\lib\import32.lib    + >> b32.bc
  echo $(BCDIR)\lib\uuid.lib      + >> b32.bc
  echo $(BCDIR)\lib\ws2_32.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
  echo $(BCDIR)\lib\psdk\psapi.lib   + >> b32.bc
  echo $(BCDIR)\lib\psdk\wininet.lib  + >> b32.bc
  echo $(BCDIR)\lib\psdk\shell32.lib  + >> b32.bc
  echo $(BCDIR)\lib\psdk\gdiplus.lib,  >> b32.bc
  IF EXIST .\res\VENTAS.res echo .\res\VENTAS.res >> b32.bc
  $(BCDIR)\bin\ilink32 -Gn -aa -Tpe -s  @b32.bc
  del b32.bc
.PRG.OBJ:
 $(HBDIR)\bin\harbour $<  /N /m /es2 /gc1 /Oobj\ /I$(FWDIR)\include;$(HBDIR)\include
 #$(HBDIR)\bin\harbour $< /L /N  /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 > tmp2
 echo -I$(HBDIR)\include;$(FWDIR)\include >> tmp2
 $(BCDIR)\bin\bcc32 -oobj\$& @tmp2 $&.c
 del tmp2
VENTAS.res : VENTAS.res
 $(BCDIR)\bin\brc32.exe -r VENTAS.resGracias Karina
Solo falta el .mak con las referencias a las librerias de xHarbour
FWH 25.12
Harbour/Hbmk2
Microsoft Visual C++
MySql 8.0
Antigravity
Gracias Karina
FWH 25.12
Harbour/Hbmk2
Microsoft Visual C++
MySql 8.0
Antigravity
Gracias Antonio
FWH 25.12
Harbour/Hbmk2
Microsoft Visual C++
MySql 8.0
Antigravity
Karhina
C:\PME>c:\bcc7\bin\make -ftest.rmk
MAKE Version 5.41 Copyright (c) 1987, 2014 Embarcadero Technologies, Inc.
Fatal: '.\res\MAIN.res' does not exist - don't know how to make it
C:\PME>if exist MAIN.exe MAIN.exe
C:\PME>
FWH 25.12
Harbour/Hbmk2
Microsoft Visual C++
MySql 8.0
Antigravity
Tengo esa lib y sin embargo me arroja ese error, pero con Harbour no lo arrojaba
echo \bcc7\lib\psdk\gdiplus.lib, >> b32.bc
IF EXIST .\res\MAIN.res echo .\res\MAIN.res >> b32.bc
\bcc7\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
Turbo Incremental Link 6.70 Copyright (c) 1997-2014 Embarcadero Technologies, In
c.
Error: Unresolved external '_HB_FUNCLSLOCKDEF' referenced from C:\PME\OBJ\TPU
BLIC.OBJ
Error: Unresolved external 'HB_FUN_CLSUNLOCKDEF' referenced from C:\PME\OBJ\T
PUBLIC.OBJ
Error: Unresolved external '_HB_FUN_FW_GT' referenced from C:\PME\OBJ\TPUBLIC.OB
J
Error: Unable to perform link
** error 2 ** deleting MAIN.exe
FWH 25.12
Harbour/Hbmk2
Microsoft Visual C++
MySql 8.0
Antigravity
\bcc582\bin\ilink32 -Gn -aa -Tpe -s @b32.bcif exist VENTAS.exe del VENTAS.exe
if not exist obj md obj
c:\bcc582\bin\make -fVENTAS.rmk
if exist VENTAS.exe VENTAS.exeCompuin wrote:Tengo esa lib y sin embargo me arroja ese error, pero con Harbour no lo arrojaba
echo \bcc7\lib\psdk\gdiplus.lib, >> b32.bc
IF EXIST .\res\MAIN.res echo .\res\MAIN.res >> b32.bc
\bcc7\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
Turbo Incremental Link 6.70 Copyright (c) 1997-2014 Embarcadero Technologies, In
c.
Error: Unresolved external '_HB_FUN___CLSLOCKDEF' referenced from C:\PME\OBJ\TPU
BLIC.OBJ
Error: Unresolved external '_HB_FUN___CLSUNLOCKDEF' referenced from C:\PME\OBJ\T
PUBLIC.OBJ
Error: Unresolved external '_HB_FUN_FW_GT' referenced from C:\PME\OBJ\TPUBLIC.OB
J
Error: Unable to perform link
** error 2 ** deleting MAIN.exe
Com lo hago?
La recompilo sola?
FWH 25.12
Harbour/Hbmk2
Microsoft Visual C++
MySql 8.0
Antigravity
Si