Primeras pruebas con MinGW (gcc para Windows)

Postby Antonio Linares » Thu Sep 18, 2008 4:44 pm

Rafa,

Muchas gracias! :-)

Ha bajado de 1.700.000 a 1.300.000

Bien! :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41513
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Carlos Mora » Fri Sep 19, 2008 7:58 pm

Felicitaciones! Muy sabia decision!
Para reducir el tamaño un pelin mas, habria que chequear cual es el valor por defecto de la alineación de bytes, bytealign, que seguro hace alguna diferencia en cuanto al tamaño.

Un saludo,
Carlos.
Carlos Mora
 
Posts: 988
Joined: Thu Nov 24, 2005 3:01 pm
Location: Madrid, España

Postby Armando Picon » Fri Sep 19, 2008 11:26 pm

Antonio

Utilizando el Harbour para MInGW desde Sourceforge y el MinGW Full he podido compilar sin ningun problema tu prueba.

Este es el bat que utilice para hacerlo

@ECHO OFF
CLS
ECHO ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
ECHO ³ Harbour for MinGW Harbour development power ³Ü
ECHO ³ Batch adaptado del foro FWH ³Û
ECHO ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙÛ
ECHO ÿ ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß

Set DirHb=c:\MinGW\Hb101
Set DirMg=c:\mingw

ECHO Compilando con Harbour
%DirHb%\Bin\Harbour.exe %1.prg /n > clip.log
@type clip.log

IF ERRORLEVEL 1 PAUSE
IF ERRORLEVEL 1 GOTO EXIT

ECHO Compilando y Enlazando con GCC
%DirMg%\bin\gcc -c -o%1.o -I%DirHb%\include %1.c
%DirMg%\bin\gcc %1.o -o%1.exe -L%DirHb%\lib -Wl,--start-group -lhbcommon -lhbvm -lhbrtl -lhbrdd -lhbmacro -lhblang -lhbcpage -lhbpp -lrddntx -lrddcdx -lrddfpt -lhbsix -lhbusrrdd -lhbct -lgtwin -lhbdebug -Wl,--end-group

IF EXIST %1.exe %1.exe

:EXIT

Puesto que no soy usuario de la version 8.08 y por tanto no califico para beta tester, alguna sugerencia para actualizar el codigo que dispongo?

Antonio Linares wrote:Ya tenemos una primera versión de FWH construido con MinGW :-)

Y está funcionando correctamente!!!

Se les va a proporcionar como versión beta a los usuarios del recien publicado FWH 8.09 :-)
FWH + BCC582 + WorkShop 4.5 + Resource Hacker + Mingw
Mis nuevas herramientas
Comunicacion via WhatsApp (+51) 957549 665
Comunicación via Correo: apic1002002 at yahoo dot es; apic1002002@gmail.com
User avatar
Armando Picon
 
Posts: 446
Joined: Mon Dec 26, 2005 9:11 pm
Location: Lima, Peru

Postby Antonio Linares » Sat Sep 20, 2008 7:49 am

Armando,

>
Puesto que no soy usuario de la version 8.08 y por tanto no califico para beta tester, alguna sugerencia para actualizar el codigo que dispongo?
>

El problema es que hay que recompilar todo y con cambios en módulos en C. No se me ocurre la forma de hacerlo para la versión 2.4 de FWH :-(

De todas formas, como ejercicio que te gustará, prueba a construir esto :-)
Code: Select all  Expand view
function Main()

   MsgInfo( "Hola mundo!" )

return nil

#pragma BEGINDUMP

#include <hbapi.h>
#include <windows.h>

HB_FUNC( MSGINFO )
{
   MessageBox( 0, hb_parc( 1 ), "Información", MB_ICONINFORMATION );
}

#pragma ENDDUMP
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41513
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Armando Picon » Mon Sep 22, 2008 3:52 pm

Antonio

Podrías indicarme cómo hacer para crear las librerías bajo MinGW, estoy investigando este tema. Puedo crear los ejecutables desde programas simples con Harbour para consola, pero necesito recrear mis librerias que manejan mis DBFs.

Saludos

Armando
FWH + BCC582 + WorkShop 4.5 + Resource Hacker + Mingw
Mis nuevas herramientas
Comunicacion via WhatsApp (+51) 957549 665
Comunicación via Correo: apic1002002 at yahoo dot es; apic1002002@gmail.com
User avatar
Armando Picon
 
Posts: 446
Joined: Mon Dec 26, 2005 9:11 pm
Location: Lima, Peru

Postby Antonio Linares » Mon Sep 22, 2008 7:33 pm

Armando,

Si te refieres a construir librerías, esta es la forma de hacerlo:

c:\mingw\bin\ar rc milibreria.a modulo.o

Igual que se hace en Linux ó en Mac, usando ar
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41513
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Armando Picon » Mon Sep 22, 2008 8:16 pm

Quieres decir que si pongo

c:\mingw\bin\ar rc milibreria.a modulo.o modulo2.o modulo3.o ....
Voy a generar mis Libs?

Y para generar el conjunto de modulos sin enlazarlos y formar la libreria, con la sentencia anterior? Deberia usar esto, para cada uno?:

%DirMg%\bin\gcc -c -o%1.o -I%DirHb%\include %1.c

Antonio Linares wrote:Armando,

Si te refieres a construir librerías, esta es la forma de hacerlo:

c:\mingw\bin\ar rc milibreria.a modulo.o

Igual que se hace en Linux ó en Mac, usando ar
FWH + BCC582 + WorkShop 4.5 + Resource Hacker + Mingw
Mis nuevas herramientas
Comunicacion via WhatsApp (+51) 957549 665
Comunicación via Correo: apic1002002 at yahoo dot es; apic1002002@gmail.com
User avatar
Armando Picon
 
Posts: 446
Joined: Mon Dec 26, 2005 9:11 pm
Location: Lima, Peru

Postby Antonio Linares » Mon Sep 22, 2008 8:42 pm

Armando,

Si, asi es :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41513
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Armando Picon » Mon Sep 22, 2008 8:55 pm

Gracias Antonio...

Abusando de tu amabilidad; por "casualidad" no tendrás por allí un archivito bat que pudiera contener la serie de nombres, como el antiguo CLP para compilar y enlazar, sin tener que estar escribiendo la misma sentencia para cada uno de los prg?

Te comento que he tomado el reto de convertir mi codigo C de borland para MinGW, por ahora voy a documentarme con las diferencias entre ambos... Supongo que no habrá problemas en la devolución de datos entre el Gcc y el harbour, verdad?

Antonio Linares wrote:Armando,

Si, asi es :-)
FWH + BCC582 + WorkShop 4.5 + Resource Hacker + Mingw
Mis nuevas herramientas
Comunicacion via WhatsApp (+51) 957549 665
Comunicación via Correo: apic1002002 at yahoo dot es; apic1002002@gmail.com
User avatar
Armando Picon
 
Posts: 446
Joined: Mon Dec 26, 2005 9:11 pm
Location: Lima, Peru

Postby Antonio Linares » Mon Sep 22, 2008 9:43 pm

Armando,

Puedes facilmente adaptar este:

for %%f in (*.prg) do c:\harbour\bin\harbour %%f /n /ic:\fwh\include;c:\harbour\include
for %%f in (*.c) do c:\bcc55\bin\bcc32 -c -Ic:\bcc55\include;c:\harbour\include %%f
for %%f in (*.obj) do c:\bcc55\bin\tlib fiveh.lib -+ %%f /0 /P32,,

> Supongo que no habrá problemas en la devolución de datos entre el Gcc y el harbour, verdad?

Ningun problema. El "sistema extendido" ("extend system") está implementado integramente en C.

Algo importante que tienes que tener en cuenta: No puedes "mezclar" OBJ de Borland con .O de MinGW gcc.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41513
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Armando Picon » Mon Sep 22, 2008 10:23 pm

Supongo que esto es un bat; estoy sorprendido por las instrucciones, no recuerdo haberlos visto en mi época de Clipper-DOS (debo haber sido mal programador)

¿Qué le envio o como lo hago funcionar? o solamente lo invoco colocandome en la carpeta donde están los prgs, así sin más ni más?

for %%f in (*.prg) do c:\harbour\bin\harbour %%f /n /ic:\fwh\include;c:\harbour\include
for %%f in (*.c) do c:\bcc55\bin\bcc32 -c -Ic:\bcc55\include;c:\harbour\include %%f
for %%f in (*.obj) do c:\bcc55\bin\tlib fiveh.lib -+ %%f /0 /P32,,

>>Algo importante que tienes que tener en cuenta: No puedes "mezclar" OBJ de Borland con .O de MinGW gcc.

Esto si ya lo sabía...!
FWH + BCC582 + WorkShop 4.5 + Resource Hacker + Mingw
Mis nuevas herramientas
Comunicacion via WhatsApp (+51) 957549 665
Comunicación via Correo: apic1002002 at yahoo dot es; apic1002002@gmail.com
User avatar
Armando Picon
 
Posts: 446
Joined: Mon Dec 26, 2005 9:11 pm
Location: Lima, Peru

Postby Antonio Linares » Tue Sep 23, 2008 1:10 am

Armando,

Si, es un bat. Tienes que ejecutarlo desde donde tengas tus PRGs.

Cambia la llamada a bcc32 por gcc, y la llamada a tlib por ar, como hemos comentado anteriormente :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41513
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Armando Picon » Tue Sep 23, 2008 1:19 am

Oki

Thanks very much

Antonio Linares wrote:Armando,

Si, es un bat. Tienes que ejecutarlo desde donde tengas tus PRGs.

Cambia la llamada a bcc32 por gcc, y la llamada a tlib por ar, como hemos comentado anteriormente :-)
FWH + BCC582 + WorkShop 4.5 + Resource Hacker + Mingw
Mis nuevas herramientas
Comunicacion via WhatsApp (+51) 957549 665
Comunicación via Correo: apic1002002 at yahoo dot es; apic1002002@gmail.com
User avatar
Armando Picon
 
Posts: 446
Joined: Mon Dec 26, 2005 9:11 pm
Location: Lima, Peru

Previous

Return to FiveWin para Harbour/xHarbour

Who is online

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