Sign in Join
Wiki copytemporary

PalmOS port/es: what changed

Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11La versión PalmOS está en un estado muy inicial. Esta versión ha sido puesta en marcha y es mantenida por Mazen Neifer. Peter Vreman ha convertido las cabeceras del API de PalmOS.
22
33## Estado
44
55- La versión 2.1.x del compilador tiene soporte (muy experimental) para compilar para PalmOS.
66- La CPU [[ARM]] CPU está soportada.
77- Las siguientes plataformas serán soportadas:
88 - Zire72 – version PalmOS: 5.2.8
99- Las unidades RTL de Base no están convertidas.
1010
1111## Tutoría de Construcción
1212
1313   Durante la tutoría algunos pasos se presuponen para demostrar el proceso de construcción. Sustituye las rutas con las adecuadas de tu sistema.
1414
1515### Utilidades binarias cruzadas (*Cross binutils*)
1616
1717   Estas son las herramientas básicas necesarias para crear ejecutables:
1818
1919- **arm-palmos-ld** : Enlazador
2020- **arm-palmos-as** : Ensamblador
2121- **arm-palmos-ar** : Archivador (Crea archivos de enlace inteligente (*smartlinking*) .a)
2222- **arm-palmos-strip**: Eliminador de secciones de los binarios ejecutables
2323
2424   y algunos otros.
2525
2626   Estas herramientas puedes encontrarlas en un paquete listo para utilizar de debian linux (sid) **[prc-tools-utils](http://packages.debian.org/unstable/otherosfs/prc-tools)**. Utiliza el mandato "apt-get install prc-tools-utils" para obtenerlo e instalarlo. De lo contrario, es necesario obtenerlos de <http://www.palmos.com/dev/dl/dl_tools/>. Extrae en un directorio de tu máquina. En una máquina con Debian se instalan en `/usr/bin/arm-palmos-*`
2727
2828### Compilador cruzado
2929
3030   Vamos a suponer que estás usando una instalación Linux Debian (sid) y que el compilador FPC ya está instalado y configurado correctamente. En debian debemos instalar el paquete **[fp-compiler](http://packages.debian.org/unstable/devel/fp-compiler)** con la orden *apt-get install fp-compiler*.
3131
3232   Ahora hay que construir el compilador cruzado FPC para el procesador ARM. Para llevarlo a cabo necesitamos las últimas fuentes (desde la versión 2.1.x) además de la instalación de trabajo de FPC 2.0.2 o 2.0 antes mencionadas. Obtendremos las fuentes del repositorio de fuentes Subversion: <http://www.freepascal.org/develop.html#svn>
3333
3434### Entorno
3535
3636   Suponemos que las fuentes de Free Pascal están aquí: `${FPC_SRC}`
3737
38-` ``PATH="/bin:/usr/bin:/usr/bin/X11:/usr/local/bin:${FPC_SRC}/compiler"`
38+```text
39+ <tt>PATH="/bin:/usr/bin:/usr/bin/X11:/usr/local/bin:${FPC_SRC}/compiler"</tt>
40+```
3941
4042### El proceso de Construcción
4143
4244   A fin de construir el compilador cruzado, es necesario tener una variable de entorno `PATH` correcta. Haz el favor de asegurarte de que las rutas de *PATH* son las adecuadas:
4345
4446 make all CPU_TARGET=arm OS_TARGET=palmos
4547
4648   Al finalizar la compilación no debes ver errores.
4749
4850   Ahora tendrás el binario `ppccrossarm` en `${FPC_SRC}/compiler` y varios archivos `.o` y `.ppu` en `${FPC_SRC}/rtl/units/arm-palmos`
4951
5052   Copia estos archivos a tu instalación FPC de trabajo. El compilador cruzado `ppccrossarm` debe ir a `/usr/local/bin/arm-palmos` y las unidades a `/usr/local/lib/fpc/units/arm-palmos`
5153
5254### Archivo de Configuración
5355
5456   Ahora tienes que editar el archivo de configuración de FPC `${HOME}/.fpc.cfg` a fin de utilizar `ppccrossarm` de forma fácil, para ello añade estas líneas al mismo:
5557
5658 #IFDEF FPC_CROSSCOMPILING
5759 -Tpalmos
5860 -Fu${FPC_SRC}/rtl/units/arm-palmos
5961 -XParm-palmos-
6062 #ENDIF
6163
6264## Compilar un proyecto de Prueba
6365
6466   ¡Has compilado el compilador! ahora, ¿qué puedo hacer con él? Este es una tutoría para crear un programa *hola mundo* con su nuevo compilador.
6567
6668### Instalar y configurar el emulador
6769
6870   En primer lugar, es necesario instalar el emulador de dispositivos Palm. Se trata de un binario de Windows, pero funciona bien con WINE en un linux Debian (sid).
6971
7072   Cosas para hacer (*ToDo*)
7173
7274### Compilar
7375
7476   El archivo de ejemplo para compilar:
7577
7678``` pascal
7779 program prueba;
7880 {$apptype console}
7981 var
8082 Str: string;
8183 begin
8284 WriteLn('Programa desarrollado con:');
8385 WriteLn('El compilador Free Pascal');
8486 WriteLn('');
8587 WriteLn('Por favor escribe tu nombre:');
8688 ReadLn(Str);
8789 WriteLn('Tu nombre es: ' + Str);
8890 end.
8991```
9092
9193   Ejemplo de línea de órdenes para compilar `prueba.pas`:
9294
93-`ppcrossarm prueba.pas`
95+```text
96+<tt> ppcrossarm prueba.pas</tt>
97+```
9498
9599   Ahora debes coger el archivo ejecutable `prueba.prc` y copiarlo en tu aparato Palm y ejecutarlo.
96100
97101## Depurando aplicaciones PalmOS
98102
99103   Esta sección todavía no está disponible
100104
101105## Construyendo las librerías de FPC
102106
103107   Si quieres construir las librerías disponibles para FPC, por ejemplo, quieres construir la FCL, ejecuta las siguientes órdenes.
104108
105109 cd ${FPC_SRC}/fpc
106110 make OS_TARGET=palmos CPU_TARGET=arm PP=ppcrossarm fcl
107111
108112   Tendrás las unidades de la FCL en `${FPC_SRC}/fpc/fcl/units/arm-palmos`.
109113
110114## Documentación
111115
112116### notas de la versión PalmOS
113117
114118- PalmOS no tiene soporte para aplicaciones de consola por defecto. Pero puedes instalar el soporte de consola tú mismo. Ten en cuenta que FPC crea aplicaciones GUI para PalmOS de forma predeterminada. Para crear la aplicación de consola se debes utilizar la opción `-WC` del compilador o poner la directiva `{$APPTYPE CONSOLE}` en el código fuente.
115119
116120## Enlaces
117121
118122- [Buildfaq](http://www.stack.nl/~marcov/buildfaq.pdf) es un *FAQ* general acerca de cómo crear y configurar FPC.
119123
120124   Éstos son algunos enlaces relacionados con la arquitectura de cpu ARM
121125
122126- [ARM Core Developers Forum](http://www.armcorepro.com/) Aunque no muy activa.
123127- [GCC ARM Improvement Project](http://www.inf.u-szeged.hu/gcc-arm/)
124128- [ARM ASSEMBLER](http://www.heyrick.co.uk/assembler/index.html) Buena información y código relacionados con el lenguaje ensamblador de ARM.
125129- [GNU ARM toolchain for Cygwin, Linux and MacOS](http://www.gnuarm.com/)
126130- [ARM Instruction Sets & Programs](http://soc.csie.ndhu.edu.tw/source/intro_embedded/ch2-arm-2.ppt) Muy buena y concisa información sobre la arquitectura ARM
127131- [El juego de instrucciones ARM](http://web.njit.edu/~baltrush/arm_stuff/ARMInst.ppt) Una buena presentación sobre ARM
128132
129133## Contactos
130134
131135   [Mazen NEIFER](mailto:mazen@freepascal.org)
132136
133137---
134138*From the Free Pascal wiki, page "PalmOS port/es", as it stood on 2020-02-23 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history