FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveMac / FivePhone (iPhone, iPad) Preguntas Simples
Posts: 82
Joined: Mon Jan 19, 2009 04:40 PM
Preguntas Simples
Posted: Mon Jul 26, 2010 02:44 PM

Estimados ....

1.- Como puedo compilar varios prg's y dese luego encadenarlos ?

2.- Al algun ejemplo de crear lib's para que sean enlazadas a los proyectos ?

3.- El echo de trabajar con 10.5 y 10.6 es necesario solicitar por aparte las lib de fivemac ?

4.- Nuestro estimado Martin pone algunos ejemplos, y los archivos independientes, es decir .m ( creo que seria como tipo .c )
como compilar estos o bien si build.sh podria hacer el trabajo de incluirlos.

5.- Recomendacion es de un editor de textos o bien usar el Xcode editor ?

6.- He estado viendo el diseno de pantallas via Xcode-interface builder, pero no he visto, ( seria question de verlo ) como poder incrustar un browse. y redefinirlo en el prg ?

Un saludo y gracias.
Osvaldo Ramirez

Posts: 1516
Joined: Thu May 27, 2010 02:06 PM
Re: Preguntas Simples
Posted: Mon Jul 26, 2010 03:34 PM
2.- Una buena pregunta que seguro Antonio nos puede contestar ... :-)

6.- El browse en mac se llama NSTableview , tienes que buscarlo en el inspector de objetos ( usa el filtro ) y lo arrastras a la ventana principal , en sus propiedades le cambias el tag por el que tu quieras usar y ya estar铆a , pero de momento creo que no est谩 soportado "desde recursos ".

3.- El programa una vez generado no necesita ninguna libreria para funcionar

5.- Estoy usando el editor de xcode .Seguro que no es el mejor , pero si elque mas a mano tengo . tiene un autocompletar que evita teclear demas y una busqueda bastante buena .

1. y 4.- - Te comento como lo estoy haciendo yo ( que seguro hay mejores maneras ) :-)

Para crear un proyecto nuevo creo una carpeta en el raiz de fivemac . Me explico : /User/fivemac/Miproyecto .
en ella voy colocando todos los archivos que necesito para el proyecto.
Copio el build.sh de samples y lo coloco en la carpeta . Lo edito y cambio lineas ....
1.- voy a la linea de abajo de echo compiling .
copio esa linea completa y la duplico una vez por cada prg a enlazar con sus nombres respectivos, menos el prg principal .
Esto hace que se ejecute harbour en cada uno de los prg y se generen sus archivos .c
tienes que a帽adir estos archivos al compilador y al linkador de c en la linea debajo de :
compilin y linking.
Los archivos .m son archivos objective -c equivalentes a los archivos .c .solo tienes que a帽adirlos en el mismo sitio que los anteriores y listo .

Te pongo un build.sh generico que te ilustrar谩 mas que esta explicaci贸n .
luego en terminal : ./build.sh myprog.prg y revisa si todo compila correcto .

Code (fw): Select all Collapse
# ./build.sh - (c) FiveTech Software 2007-2010

clear

if [ $# = 0 ]; then
聽 聽echo syntax: ./build.sh file [options...]
聽 聽exit
fi

echo compiling...
./../../harbour/bin/harbour 1$ -n -I./../include:./../../harbour/include $2
./../../harbour/bin/harbour prg2.prg -n -I./../include:./../../harbour/include $2
./../../harbour/bin/harbour prg3.prg -n -I./../include:./../../harbour/include $2
if [ 1$ = 1 ]; then
聽 聽exit
fi 聽 

echo compiling C module...

# 聽add -arch ppc -arch i386 for universal binaries
gcc $1.c pr2.c prg3.c 聽archivo1.m archivo2.m 聽-c -I./../include -I./../../harbour/include

if [ ! -d $1.app ]; then
聽 聽mkdir $1.app
fi 聽 
if [ ! -d $1.app/Contents ]; then
聽 聽mkdir $1.app/Contents
聽 聽echo '<?xml version="1.0" encoding="UTF-8"?>' > $1.app/Contents/Info.plist
聽 聽echo '<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">' >> $1.app/Contents/Info.plist
聽 聽echo '<plist version="1.0">' >> $1.app/Contents/Info.plist
聽 聽echo '<dict>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <key>CFBundleExecutable</key>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <string>'$1'</string>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <key>CFBundleName</key>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <string>'$1'</string>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <key>CFBundleIdentifier</key>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <string>com.fivetech.'$1'</string>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <key>CFBundlePackageType</key>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <string>APPL</string>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <key>CFBundleInfoDictionaryVersion</key>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <string>6.0</string>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <key>CFBundleIconFile</key>' >> $1.app/Contents/Info.plist
聽 聽echo ' 聽 <string>fivetech.icns</string>' >> $1.app/Contents/Info.plist
聽 聽echo '</dict>' >> $1.app/Contents/Info.plist
聽 聽echo '</plist>' >> $1.app/Contents/Info.plist
fi 聽 
if [ ! -d $1.app/Contents/MacOS ]; then
聽 聽mkdir $1.app/Contents/MacOS
fi 聽
if [ ! -d $1.app/Contents/Resources ]; then
聽 聽mkdir $1.app/Contents/Resources
聽 聽cp ./../icons/fivetech.icns $1.app/Contents/Resources/
fi 

echo linking...
# 聽add -arch ppc -arch i386 for universal binaries
gcc $1.o prg2.o prg3.o archivo1.o archivo2.o -o ./$1.app/Contents/MacOS/$1 -L./../lib -lfive -lfivec -L./../../harbour/lib -lhbdebug -lhbvm -lhbrtl -lhblang -lhbrdd -lhbrtl -lgttrm -lhbvm -lhbmacro -lhbpp -lrddntx -lrddcdx -lrddfpt -lhbsix -lhbcommon -framework Cocoa

rm $1.c
rm $1.o

echo done!
./$1.app/Contents/MacOS/$1

# reset
Posts: 82
Joined: Mon Jan 19, 2009 04:40 PM
Re: Preguntas Simples
Posted: Tue Jul 27, 2010 02:44 AM

Estimado

Agradesco mucho tus comentarios...

y claro tambieng gracias por los build.sh

Saludos
Osvaldo Ramirez

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Preguntas Simples
Posted: Tue Jul 27, 2010 06:14 AM

Osvaldo, Manuel,

Para construir una libreria, solo hay que llamar a:

ar rc mylibrary.a modulo.o

Y crear谩 la libreria mylibrary.a a帽adi茅ndole el m贸dulo con extensi贸n .o generado con gcc :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Preguntas Simples
Posted: Tue Jul 27, 2010 06:17 AM

Para poder trabajar con Leopard 10.5 (32 bits) y Snow Leopard 10.6 (64 bits) lo mejor ser谩 que en el pr贸ximo build de FiveMac incluyamos el fichero make que nosotros usamos para que asi podais construir vosotros mismos las librerias para la versi贸n que necesiteis :-)

En cuanto al editor de c贸digo fuente, yo sigo usando el UEStudio de Windows gracias a "WinBottler". Lo mismo para el Total Commander que para mi es totalmente necesario. En este tema cada programador tiene sus preferencias :-)

http://winebottler.kronenberg.org/

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 82
Joined: Mon Jan 19, 2009 04:40 PM
Re: Preguntas Simples
Posted: Tue Jul 27, 2010 07:53 PM

Estimado ...
Muchas gracias por la informacion y esperando q tambien a otros les sirva.

Saludos
Osaldo Ramirez

Continue the discussion