Página 2 de 2

Copilat com BAT

Enviado: 30 Mar 2017 11:41
por acelconsultoria
Kapiaba

Sim... essa funcionou perfeitamente.

Eu havia notado no seu print, que o seu xDev haviam algumas pastas a mais que o meu. Mas abrindo aqui, a sua versão do xDev é a mesma que eu tinha. Com a pasta "Fivewin" a mais.

Como o xDev parou de ser atualizado, tenho apenas procurado por versões onde as pessoas tenham feito as próprias modificações nos Scripts de compilação. Tenho quebrado a cabeça aqui pra tentar fazer a xDev gerar um script usando o hbmk2, aí ficaria melhor pra xDev trabalhar com todas as versões do Harbour e os compiladores diversos disponíveis em C.

Mas eu ainda tô aprendendo a entender como o hbmk2 funciona. ahhaahahahahaha

Grato.

Maickon Sato

Copilat com BAT

Enviado: 30 Mar 2017 11:46
por acelconsultoria
Arlindo escreveu:Bom dia Kapiaba

Está dando o mesmo erro, como post anterior.

Abraço
Talvez vc tenha executado o arquivo xBaseDev.exe => esse vai dar erro mesmo. Pois é uma versão antiga da xDev.

Execute o arquivo xDevStudio.exe, que vai dar certinho.

Maickon Sato

Copilat com BAT

Enviado: 30 Mar 2017 12:32
por jairfab
Pode usar o Bat também, fiz poucas alterações e funcionou

Código: Selecionar todos

@ECHO OFF
CLS
ECHO ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
ECHO ³ FiveWin for Harbour 14.12 Harbour development power                       ³Ü
ECHO ³ (c) FiveTech, 1993-2011 for Microsoft Windows 9X/NT/200X/ME/XP/Vista/7    ³Û
ECHO ³ /I  Para uso com MEM RDD                                                  ³Û
ECHO ³ /F  Para uso com Firebird                                                 ³Û
ECHO ³ /N  Para uso com NetIO RDD                                                ³Û
ECHO ³ /M  Para uso com MySQL RDD                                                 ³Û
ECHO ³ /Q  Para uso com SQLLib RDD                                                 ³Û
ECHO ³ /O  Para uso com ODBC                                                ³Û
ECHO ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙÛ
ECHO ÿ ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß

if A%1 == A GOTO :SINTAX
if NOT EXIST %1.prg GOTO :NOEXIST

ECHO Compiling...

@SET PATH=
@SET PATH=%WINDIR%;%WINDIR%\SYSTEM32;%HBVERSAO%\BIN;%BCVERSAO%\BIN

REM //
REM // Flags de compilacao
REM //
@SET HBFlags= /n /p
@SET BCFlags= -O2 -M -c -tW -w0
@SET BRFlags= -32 
@SET ILFlags= -Gn -aa -Tpe -s


@SET FWVERSAO=C:\deswin\fwh
@SET HBVERSAO=C:\deswin\harbour 
@SET BCVERSAO=C:\deswin\BCC582

@SET FWDIR=C:\deswin\fwh
@SET HBDIR=C:\deswin\harbour
@SET BCDIR=C:\deswin\BCC582

@SET HDIR=C:\deswin\harbour
@SET HDIRL=%HDIR%\lib
@SET FWH=%FWDIR%


@SET INCLUDE=%HBVERSAO%\INCLUDE;%BCVERSAO%\INCLUDE;%FWVERSAO%\INCLUDE
@SET BIN=%HBVERSAO%\BIN;%BCVERSAO%\BIN;%FWVERSAO%\BIN
@SET LIB=%HBVERSAO%\LIB;%BCVERSAO%\LIB;%FWVERSAO%\LIB


@SET GT=gtgui

if not exist uuid.lib copy %bcdir%\lib\uuid.lib

%hdir%\bin\harbour %1 /i%fwh%\include;%hdir%\include /w0 %HBFlags% %3 /d__HARBOUR__ > comp.log
IF ERRORLEVEL 1 GOTO COMPILEERRORS
@type comp.log

%bcdir%\bin\bcc32 -M -c @b32.bc

echo -O2 -e%1.exe -I%hdir%\include;%bcdir%\include %1.c > b32.bc
%bcdir%\bin\bcc32 -M -c @b32.bc
:ENDCOMPILE

IF EXIST %1.rc %bcdir%\bin\brc32 -r -I%bcdir%\include %1
rem IF EXIST %1.rc %vcdir%\bin\rc -r -d__FLAT__ %1

rem echo %bcdir%\lib\c0w32.obj getbtn.obj + > b32.bc
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\FiveH.lib + >> b32.bc
echo %fwh%\lib\FiveHC.lib + >> b32.bc
if exist calexh.lib echo calexh.lib + >> b32.bc
echo %hdirl%\hbrtl.lib + >> b32.bc
echo %hdirl%\hbvm.lib + >> b32.bc
echo %hdirl%\%GT%.lib + >> b32.bc
echo %hdirl%\gtstd.lib + >> b32.bc
echo %hdirl%\gtcgi.lib + >> b32.bc
echo %hdirl%\hblang.lib + >> b32.bc
echo %hdirl%\hbmacro.lib + >> b32.bc
echo %hdirl%\hbrdd.lib + >> b32.bc
echo %hdirl%\rddntx.lib + >> b32.bc
echo %hdirl%\rddcdx.lib + >> b32.bc
echo %hdirl%\rddfpt.lib + >> b32.bc

echo %hdirl%\rddsql.lib + >> b32.bc
echo %hdirl%\sddodbc.lib + >> b32.bc
echo %hdirl%\sddmy.lib + >> b32.bc

echo %hdirl%\hbsix.lib + >> b32.bc
echo %hdirl%\hbdebug.lib + >> b32.bc
echo %hdirl%\hbcommon.lib + >> b32.bc
echo %hdirl%\hbpp.lib + >> b32.bc
echo %hdirl%\hbcpage.lib + >> b32.bc
echo %hdirl%\hbwin.lib + >> b32.bc
rem echo %hdirl%\compiler.lib + >> b32.bc
echo %hdirl%\hbcplr.lib + >> b32.bc
echo %hdirl%\hbct.lib + >> b32.bc
echo %hdirl%\hbnf.lib + >> b32.bc
echo %hdirl%\hbextern.lib + >> b32.bc
echo %hdirl%\xhb.lib + >> b32.bc
echo %hdirl%\hbtip.lib + >> b32.bc


*echo %fwh%\lib\adordd.lib + >> b32.bc

echo %hdirl%\hbusrrdd.lib + >> b32.bc

echo %hdirl%\hboleaut.lib + >> b32.bc
rem echo %hdirl%\ole2w32.lib + >> b32.bc

echo %hdirl%\hbhpdf.lib + >> b32.bc
echo %hdirl%\libhpdf.lib + >> b32.bc
echo %hdirl%\hbzebra.lib + >> b32.bc

rem echo %hdirl%\hbziparc.lib + >> b32.bc
rem echo %hdirl%\hbmzip.lib + >> b32.bc
rem echo %hdirl%\hbzlib.lib + >> b32.bc
rem echo %hdirl%\minizip.lib + >> b32.bc

rem Uncomment these two lines to use Advantage RDD
rem echo %hdirl%\rddads.lib + >> b32.bc
rem echo %hdirl%\Ace32.lib + >> b32.bc

rem /I  Para uso com MEM RDD
if "%2"=="/I" echo %hdirl%\hbmemio.lib + >> b32.bc

rem /F   Para uso com tFirebird
if "%2"=="/F" echo %hdirl%\xfirelib.lib + >> b32.bc
if "%2"=="/F" echo %hdirl%\fbclient.lib + >> b32.bc

rem /N  Para uso com NetIO RDD
if "%2"=="/N" echo %hdirl%\hbnetio.lib + >> b32.bc
if "%2"=="/N" echo %hdirl%\hbzlib.lib + >> b32.bc
if "%2"=="/n" echo %hdirl%\hbnetio.lib + >> b32.bc
if "%2"=="/n" echo %hdirl%\hbzlib.lib + >> b32.bc

rem /Q  Para uso com SQLLib RDD
if "%2"=="/Q" echo %hdirl%\sqllib.lib + >> b32.bc
if "%2"=="/Q" echo %hdirl%\libmysql.lib + >> b32.bc
if "%2"=="/q" echo %hdirl%\sqllib.lib + >> b32.bc
if "%2"=="/q" echo %hdirl%\libmysql.lib + >> b32.bc

rem /O  Para uso com ODBC
if "%2"=="/O" echo %hdirl%\odbc.lib + >> b32.bc
if "%2"=="/O" echo %hdirl%\psdk\odbc32.lib + >> b32.bc
if "%2"=="/o" echo %hdirl%\odbc.lib + >> b32.bc
if "%2"=="/o" echo %hdirl%\psdk\odbc32.lib + >> b32.bc

rem Para uso com Advantage RDD
if "%2"=="/A" echo %hdirl%\rddads.lib + >> b32.bc
if "%2"=="/A" echo %hdirl%\ace32.lib + >> b32.bc
if "%2"=="/a" echo %hdirl%\rddads.lib + >> b32.bc
if "%2"=="/a" echo %hdirl%\ace32.lib + >> b32.bc

rem /M  Para uso com MySQL RDD
if "%2"=="/M" echo %hdirl%\mysql.lib + >> b32.bc
if "%2"=="/M" echo libmysql.lib + >> b32.bc
if "%2"=="/M" echo %hdirl%\odbc.lib + >> b32.bc
if "%2"=="/M" echo %hdirl%\psdk\odbc32.lib + >> b32.bc
if "%2"=="/m" echo %hdirl%\mysql.lib + >> b32.bc
if "%2"=="/m" echo libmysql.lib + >> b32.bc
if "%2"=="/m" echo %hdirl%\odbc.lib + >> b32.bc
if "%2"=="/m" echo %hdirl%\psdk\odbc32.lib + >> b32.bc

echo %bcdir%\lib\cw32.lib + >> b32.bc
echo %bcdir%\lib\uuid.lib + >> b32.bc
echo %bcdir%\lib\import32.lib + >> b32.bc
echo %bcdir%\lib\ws2_32.lib + >> b32.bc

echo %bcdir%\lib\pcrepos.lib + >> b32.bc
echo %bcdir%\lib\psdk\ole32.lib + >> b32.bc
echo %bcdir%\lib\psdk\gdi32.lib + >> b32.bc
echo %bcdir%\lib\psdk\odbc32.lib + >> b32.bc
echo %bcdir%\lib\psdk\user32.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\shell32.lib + >> b32.bc
echo %bcdir%\lib\psdk\rasapi32.lib, >> b32.bc

IF EXIST %1.res echo %1.res >> b32.bc
if %GT% == gtwin %bcdir%\bin\ilink32 -Tpe -s @b32.bc

IF ERRORLEVEL 1 GOTO LINKERROR
if %GT% == gtgui %bcdir%\bin\ilink32 -Gn -aa -Tpe -s @b32.bc

IF ERRORLEVEL 1 GOTO LINKERROR
ECHO * Application successfully built *
@del %1.c
@del %1.map
@del %1.obj
rem @del %1.ppo
@del %1.tds
@del %1.res
@del *.log
@del b32.bc
IF EXIST %1.exe %1
GOTO EXIT
ECHO

rem delete temporary files

: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

:EXIT

Copilat com BAT

Enviado: 30 Mar 2017 12:56
por JoséQuintas
Mas eu ainda tô aprendendo a entender como o hbmk2 funciona. ahhaahahahahaha
Ele busca os programas no PATH, e o resto, que conhece, ele configura sozinho.

Então é colocar os programas no PATH, e acrescentar o que ele não conhece.
Tanto faz em linha de comando ou HBP.
Ele não conhece fivewin, nem quais as LIBs do fivewin, nem aonde estão os includes e libs do fivewin: é isso que vai indicar pra ele.

hbmk2 *.prg -i\fivewin\include -lfivewin -L\fivewin\lib

Se colocar isso num hbp, uma palavra/comando por linha:

*.prg
-i\fivewin\include
-lfivewin
-L\fivewin\lib

Vai pelo método básico: faça

comece o HBP com *.prg, ou com sua lista de fontes.

pra gerar o EXE

hbmk2 test.hbp

o erro que der é porque falta acrescentar alguma coisa, ou alguma coisa está errada.
vai resolvendo as mensagens de erro, e testando, até ficar pronto.