como compilar con xHarbour para modo consola (Solucionado)

como compilar con xHarbour para modo consola (Solucionado)

Postby miarcod » Wed Nov 27, 2013 12:12 pm

Hola, a ver si alguien pudiese ayudarme, he estado buscando por todas partes pero no encuentro ninguna forma de hacerlo

Estoy intentando compilar un ejemplo como el que sigue en XHARBOR, (en harbour si lo he conseguido) para que se ejecute en modo consola, pero no lo consigo.

Utilizo el HARBORX.BAT que trae
Si compilo con el flag GT=gtgui me aparece el cuadro de dialogo de Windows
// desactivando las lilbrerias de fivewin (fivehx, fiveHc), sino me sale el dialogo de Windows igualmente
Si compilo con el flag GT=gtwin no hace nada (se genera el fichero pero no muestra nada en pantalla)

Alguien podría indicarme un fichero para compilar con xharbour el ejemplo

Gracias

Code: Select all  Expand view  RUN
function Main()
   SETMODE(25,80)
   //@ 12,12 SAY "HOLA MUNDO"

   ALERT( "Hola Mundo" )

   //CLEAR SCREEN
  // WAIT "PULA UNA TECLA"

return nil
Last edited by miarcod on Thu Nov 28, 2013 3:23 pm, edited 1 time in total.
miarcod
 
Posts: 199
Joined: Tue Oct 11, 2005 2:17 pm

Re: como compilar con xHarbour para modo consola

Postby horacio » Wed Nov 27, 2013 5:23 pm

En un tiempo hice algunas pruebas con xharbour en modo consola y utilizaba este .bat

Code: Select all  Expand view  RUN

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

ECHO Compiling...

set hdir=c:\disco_d\xharbour1
set bcdir=c:\disco_d\borland\bcc55

%hdir%\bin\harbour -w3 %1 /n /i /b..\include;%hdir%\include /w /p %2 %3 > clip.log
@type clip.log
IF ERRORLEVEL 1 PAUSE
IF ERRORLEVEL 1 GOTO EXIT

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

IF EXIST %1.rc %bcdir%\bin\brc32 -r %1

echo c0w32.obj + > b32.bc
echo %1.obj, + >> b32.bc
echo %1.exe, + >> b32.bc
echo %1.map, + >> b32.bc
echo %hdir%\lib\rtl.lib + >> b32.bc
echo %hdir%\lib\vm.lib + >> b32.bc
echo %hdir%\lib\gtwin.lib + >> b32.bc
echo %hdir%\lib\lang.lib + >> b32.bc
echo %hdir%\lib\macro.lib + >> b32.bc
echo %hdir%\lib\rdd.lib + >> b32.bc
echo %hdir%\lib\dbfntx.lib + >> b32.bc
echo %hdir%\lib\dbfcdx.lib + >> b32.bc
echo %hdir%\lib\dbffpt.lib + >> b32.bc
echo %hdir%\lib\hbsix.lib + >> b32.bc
echo %hdir%\lib\debug.lib + >> b32.bc
echo %hdir%\lib\common.lib + >> b32.bc
echo %hdir%\lib\pp.lib + >> b32.bc
echo %hdir%\lib\pcrepos.lib + >> b32.bc
echo %hdir%\lib\hbzip.lib + >> b32.bc
echo %hdir%\lib\ct.lib + >> b32.bc
echo %hdir%\lib\tip.lib + >> b32.bc
echo %hdir%\lib\hsx.lib + >> b32.bc
echo %hdir%\lib\usrrdd.lib + >> b32.bc
echo %hdir%\lib\codepage.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\rasapi32.lib + >> b32.bc
echo %bcdir%\lib\psdk\nddeapi.lib + >> b32.bc
echo %bcdir%\lib\psdk\iphlpapi.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
rem %bcdir%\bin\ilink32 -Gn -Tpe -s -v @b32.bc
%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

:LINKERROR
ECHO * There are errors
GOTO EXIT
 


Hace tiempo que no uso xHarbour y no sé si las librerias son las mismas, sería cuestión de checar. Espero te sirva
Saludos
horacio
 
Posts: 1363
Joined: Wed Jun 21, 2006 12:39 am
Location: Capital Federal Argentina

Re: como compilar con xHarbour para modo consola

Postby miarcod » Wed Nov 27, 2013 6:56 pm

Gracias por la respuesta

no funciona. el efecto es el mismo. compila y enlaza se genera un ejecutable pero no muestra nada en pantalla
miarcod
 
Posts: 199
Joined: Tue Oct 11, 2005 2:17 pm

Re: como compilar con xHarbour para modo consola

Postby juan fco. vasquez Mendoza » Wed Nov 27, 2013 10:13 pm

Prueba este batch file para compilar :



@ECHO OFF
CLS

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

ECHO Compiling...

set hdir=C:\xharbour
set bcdir=C:\bcc55

%hdir%\bin\harbour %1 /n /i..\include;%hdir%\include /p %2 %3 > clip.log
@type clip.log
IF ERRORLEVEL 1 PAUSE
IF ERRORLEVEL 1 GOTO EXIT

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

IF EXIST %1.rc %bcdir%\bin\brc32 -r %1
REM echo c0x32.obj + > b32.bc
echo c0x32.obj + > b32.bc
echo %1.obj, + >> b32.bc
echo %1.exe, + >> b32.bc
echo %1.map, + >> b32.bc
echo %hdir%\lib\rtl.lib + >> b32.bc
echo %hdir%\lib\hsx.lib + >> b32.bc
echo %hdir%\lib\hbsix.lib + >> b32.bc
echo %hdir%\lib\rtl.lib + >> b32.bc
echo %hdir%\lib\vm.lib + >> b32.bc
echo %hdir%\lib\rtl.lib + >> b32.bc
echo %hdir%\lib\gtwin.lib + >> b32.bc
echo %hdir%\lib\Lang.lib + >> b32.bc
echo %hdir%\lib\macro.lib + >> b32.bc
echo %hdir%\lib\rdd.lib + >> b32.bc
echo %hdir%\lib\dbfntx.lib + >> b32.bc
echo %hdir%\lib\dbfcdx.lib + >> b32.bc
echo %hdir%\lib\common.lib + >> b32.bc
echo %hdir%\lib\CodePage.lib + >> b32.bc
echo %hdir%\lib\DbfFpt.lib + >> b32.bc
echo %hdir%\lib\pcrepos.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 *
ECHO Linking...
%bcdir%\bin\ilink32 -Gn -Tpe -s @b32.bc

rem delete temporary files
rem @del %1.c

IF ERRORLEVEL 1 GOTO LINKERROR
ECHO * Application successfully built
GOTO EXIT
ECHO

:LINKERROR
rem PAUSE * 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
juan fco. vasquez Mendoza
 
Posts: 84
Joined: Fri May 09, 2008 8:19 pm

Re: como compilar con xHarbour para modo consola

Postby MarioG » Thu Nov 28, 2013 1:42 am

miarcod;
fijate en tu batch, busca:
gtgui.lib, y reemplazalo por gtwin.lib

si mal no recuerdo es todo lo que necesitas
Resistencia - "Ciudad de las Esculturas"
Chaco - Argentina
User avatar
MarioG
 
Posts: 1380
Joined: Fri Oct 14, 2005 1:28 pm
Location: Resistencia - Chaco - AR

Re: como compilar con xHarbour para modo consola

Postby ltorres » Thu Nov 28, 2013 3:10 am

Yo compilaba así:
Code: Select all  Expand view  RUN

***************************
 PROCEDURE Popemenu()
.
.
.
.
Return

Procedure Main()

request hb_gt_win
SetMode (30, 80)
   Application:cTitle := "popemenu"
   popemenu()
   Application:Run()

Return


No tengo el detalle a la mano, estoy en otra ciudad, si no te ayuda antes del sabado que regreso, me avisas para buscar y pasarte el detalle completo.

Saludos
ltorres
 
Posts: 42
Joined: Mon Jan 17, 2011 3:44 pm
Location: Lima - Peru

Re: como compilar con xHarbour para modo consola

Postby miarcod » Thu Nov 28, 2013 2:53 pm

Al final lo solucioné poniendo en la primera línea de la función main

Request hb_gt_win


Gracias a todos
miarcod
 
Posts: 199
Joined: Tue Oct 11, 2005 2:17 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 109 guests