Page 1 of 1
revisando fivelinux
Posted: Mon Sep 03, 2012 12:57 pm
by mastintin
Con fines didacticos he intentado instalar y hacer funcionar el fivelinux-gpl .
El primer paso fué descargar harbour del repositorio y construir sus librerías .
Segundo paso descargar la ultima version de fivelinux y construir sus librerias .
1º problema al compilar database.prg no encuentra el include hbcompat.ch . Este no está dentro del repositorio de harbour .Supongo que podre usar el hbcompat.ch de harbour para bcc de windows , pero sería bueno no tificarlo al grupo de desarrollo de harbour para linux o en su defecto incluirlo detro de fivelinux.
2ºProblema demtro del mismo archivo makefile vienen los comandos para compilar con harbour y con xharbour sería bueno poner una variable de ambiente que distingua con que compilador trabajamos.
Saludos.
Re: revisando fivelinux
Posted: Mon Sep 03, 2012 5:47 pm
by Antonio Linares
Manuel,
hbcompat.ch pertenece a Harbour, está en harbour/contrib/xhb/
El makefile, efectivamente, usa Harbour y xHarbour, la idea es borrar la parte que no se use, aunque seria mejor como indicas, que fuese facilmente configurable
Re: revisando fivelinux
Posted: Mon Sep 03, 2012 7:05 pm
by Antonio Linares
Manuel,
El diseñador de ventanas, fiveform.prg, con FiveLinux, ya va tomando forma y acercándose a los de FiveWin y FiveMac
Una delicia...
Re: revisando fivelinux
Posted: Mon Sep 03, 2012 8:42 pm
by mastintin
he intentado con este makefile que a mi para harbour me funciona bien . Seria bueno probarlo con xharbour.
Code: Select all
# FiveLinux makefile
HB_COMPILER:= harbour
all : ./lib/libfive.a ./lib/libfivec.a
ifneq ($(HB_COMPILER),xharbour)
PRG_OBJS = ./obj/bar.o \
./obj/button.o \
./obj/checkbox.o \
./obj/combobox.o \
./obj/control.o \
./obj/database.o \
./obj/dbtools.o \
./obj/dialog.o \
./obj/errsys.o \
./obj/file.o \
./obj/filename.o \
./obj/folder.o \
./obj/font.o \
./obj/form.o \
./obj/get.o \
./obj/group.o \
./obj/harbour.o \
./obj/image.o \
./obj/ini.o \
./obj/listbox.o \
./obj/memoedit.o \
./obj/menu.o \
./obj/menuitem.o \
./obj/mget.o \
./obj/msgbar.o \
./obj/pdmenu.o \
./obj/printer.o \
./obj/progres.o \
./obj/radio.o \
./obj/radmenu.o \
./obj/say.o \
./obj/scrollbar.o \
./obj/timer.o \
./obj/valblank.o \
./obj/wbrowse.o \
./obj/wbcolumn.o \
./obj/window.o
else
PRGX_OBJS = ./objx/bar.o \
./objx/button.o \
./objx/checkbox.o \
./objx/combobox.o \
./objx/control.o \
./objx/dialog.o \
./objx/errsys.o \
./objx/file.o \
./objx/folder.o \
./objx/font.o \
./objx/form.o \
./objx/get.o \
./objx/group.o \
./objx/harbour.o \
./objx/image.o \
./objx/listbox.o \
./objx/menu.o \
./objx/menuitem.o \
./objx/mget.o \
./objx/msgbar.o \
./objx/pdmenu.o \
./objx/printer.o \
./objx/progres.o \
./objx/radio.o \
./objx/radmenu.o \
./objx/say.o \
./objx/scrollbar.o \
./objx/timer.o \
./objx/valblank.o \
./objx/wbrowse.o \
./objx/wbcolumn.o \
./objx/window.o
endif
C_OBJS = ./objc/bars.o \
./objc/buttons.o \
./objc/checkboxes.o \
./objc/comboboxes.o \
./objc/dialogs.o \
./objc/files.o \
./objc/folders.o \
./objc/fonts.o \
./objc/getcolor.o \
./objc/getfile.o \
./objc/getfont.o \
./objc/gets.o \
./objc/groups.o \
./objc/images.o \
./objc/listboxes.o \
./objc/lnx.o \
./objc/menus.o \
./objc/mgets.o \
./objc/mouse.o \
./objc/msgbars.o \
./objc/msgbox.o \
./objc/printers.o \
./objc/progress.o \
./objc/radios.o \
./objc/says.o \
./objc/scrollbars.o \
./objc/spawn.o \
./objc/strtoken.o \
./objc/wbrowses.o \
./objc/windows.o
./lib/libfive.a : $(PRG_OBJS)
ifneq ($(HB_COMPILER),xharbour)
./lib/libfivec.a : $(C_OBJS)
./obj/%.c : ./source/classes/%.prg
./../harbour/bin/harbour $< -o./$@ -n -I./../harbour/include -I./include
./obj/%.c : ./source/function/%.prg
./../harbour/bin/harbour $< -o./$@ -n -I./../harbour/include -I./include
./obj/%.o : ./obj/%.c
gcc -c -D_HARBOUR_ -o $@ -I./../harbour/include -I./include $<
ar rc ./lib/libfive.a $@
else
./lib/libfivex.a : $(PRGX_OBJS)
./objx/%.c : ./source/classes/%.prg
./../xharbour/bin/harbour $< -o./$@ -n -I./../xharbour/include -I./include
./objx/%.c : ./source/function/%.prg
./../xharbour/bin/harbour $< -o./$@ -n -I./../xharbour/include -I./include
./objx/%.o : ./objx/%.c
gcc -c -o $@ -I./../xharbour/include $<
ar rc ./lib/libfivex.a $@
endif
./objc/%.o : ./source/function/%.c
gcc -D_HARBOUR_ `pkg-config --cflags gtk+-2.0` `pkg-config --cflags libgnomeprintui-2.2` -I./../harbour/include -I./include -Wall -c -o $@ $<
ar rc ./lib/libfivec.a $@
./objc/%.o : ./source/winapi/%.c
gcc -D_HARBOUR_ `pkg-config --cflags gtk+-2.0` `pkg-config --cflags libgnomeprintui-2.2` -I./../harbour/include -I./include -Wall -c -o $@ $<
ar rc ./lib/libfivec.a $@
./objc/%.o : ./source/internal/%.c
gcc -D_HARBOUR_ `pkg-config --cflags gtk+-2.0` `pkg-config --cflags libglade-2.0` -I./../harbour/include -I./include -Wall -c -o $@ $<
ar rc ./lib/libfivec.a $@
Re: revisando fivelinux
Posted: Mon Sep 03, 2012 9:21 pm
by mastintin
viendo un poco como va el tema de añadir funcionalidades a los controles he metido este codigo que parece que funciona :
Para say :
Code: Select all
en says.c
HB_FUNC( SAYSETANGLE )
{
GtkWidget * hWnd = ( GtkWidget * ) hb_parnl( 1 );
GList * children = gtk_container_get_children( ( GtkContainer * ) hWnd );
gtk_label_set_angle( children->data , hb_parnl( 2 ) );
}
en say.prg
METHOD setangle(nAngle) INLINE SaySetAngle(::hWnd,nAngle)
para meter:
Code: Select all
en progress.c
HB_FUNC( PROSETVERTICAL )
{
GtkWidget * hWnd = ( GtkWidget * ) hb_parnl( 1 );
gtk_progress_bar_set_orientation( ( GtkProgressBar * ) hWnd, GTK_PROGRESS_BOTTOM_TO_TOP );
}
en progres.prg
METHOD SetVertical() INLINE ProSetVertical( ::hWnd )
Re: revisando fivelinux
Posted: Mon Sep 03, 2012 10:39 pm
by Antonio Linares
Manuel,
Veo que te estas animando, bien!
Si te parece te doy de alta en el proyecto FiveLinux en Google code y asi puedes subir tu código directamente.
gracias!
Editado: ya estás dado de alta. Bienvenido y gracias!