Haiku specific Release Engineering/es

From Free Pascal wiki
Jump to navigationJump to search

English (en) español (es)

HAIKU es un sistema operativo muy interesante que aún se encuentra en fase de desarrollo:

En concreto a fecha 17 de Agosto 2017: Versión: R1/Alpha 4.1 Fecha de salida: 14 de noviembre de, 2012 Plataforma de computación: x86-32

   Haiku 32-bit híbrido (Compatible, Estable)
       Architecture: x86
       Compatibilidad binaria con BeOS: Si
       Compilador: gcc 2.95.3 + gcc 5.4.0
   Haiku 64-bit (Moderno, Rápido)
       Arquitectura: x86_64
       Compatibilidad binaria BeOS: No
       Compiler: gcc 5.4.0

A fecha 28 de Septiembre de 2018: Versión: R1/beta1 Plataforma de computación: x86,32 & 64 bits.

Builds nocturnas:

Haiku para 32 bits Hibrído:

 Arquitectura: x86
 Compatibilidad con BeOS: si 
 Compilador: gcc 2.95.3 + gcc 7.3.0

Haiku para 64 bits:

 Architectura: x86_64
 Compatibilidad con BeOS: No
 Compilador: gcc 7.3.0.


Estas builds nocturnas incorporan mejoras que pueden ser o no más estables que la R1/'Beta 1. Desde luego no aconsejadas para producción y bajo el riesgo de quién se las instale sin ningún tipo de garantía.

A fecha de hoy:

https://www.haiku-os.org/get-haiku/


Es evidente que necesitan desarrolladores para dar un impulso a este interesante sistema operativo y que FreePascal & Lazarus esté disponible bajo este sistema indudablemente beneficiaría notablemente a ambas comunidades.

Es un sistema operativo que cada vez tiene más drivers (incluso portados de otros sistemas) y aplicaciones disponibles en su repositorio (Haiku Depot) y sería muy interesante tener disponibles tanto FreePascal como Lazarus en la versión empaquetada que ellos utilizan que es .HPKG ya que incluso la actual versión oficial de FreePascal que tiene formato .hpkg cuando se desempaqueta lo hace en un directorio non packaged.

Otra cuestión es que esta versión de FreePascal (solo 32 bits) contiene una compilación del IDE fp que requiere ncurses 5 para arrancar no siendo posible ya que en el Depot de Haiku se tiene actualmente ya la 6.

En mi caso he probado el formato Live en CD tanto R1/Alpha 4.1 como la R1/ Beta 1 que arranca más rápido en bastante hardware real y sobre todo en entornos virtualizados.

Progreso realizado con fpcupdeluxe:

Hay cierto trabajo implementado en fpcupdeluxe ([[1]] pero más avanzado para la versión de 32.

Por ejemplo, a fecha de escribir esto (octubre 2019) hace dos años que se modificaron:

   ftplist.pas  -> Para añadir Haiku.

Algunas modificaciones del GUI y sobre Haiku:

   m_any_to_haiku386.pas 	
   m_any_to_haikux64.pas

En extrasettings.pas contempa como sistema operativo Target haiku y como CPU tanto x86_64 como i386.

En fpcuputil.pas se indica que synaser no compila bajo Haiku.

No he logrado generar un fichero ejecutable para Haiku ni en 32 ni en 64.

Dado que este programa realiza la descarga de software incluyendo las binutils no se si logra descargar todo lo que enecesita y en las versiones actuales.


Desconozco si Oco tendrá tiempo de afianzar la parte de desarrollo para Haiku y así hacer realidad el poder instalar Lazarus en este interesante sistema operativo de escritorio.

Bajo Debian para compilarlo parece que necesita: make binutils build-essential gdb subversion zip unzip libx11-dev libgtk2.0-dev libgdk-pixbuf2.0-dev libcairo2-dev libpango1.0-dev

Obteniendo fpcbuild desde el repositorio

Obtener las fuentes, descargar fpcbuild desde el ftp y extraer el contenido o bien desde la línea de mandato:

 svn export http://svn.freepascal.org/svn/fpcbuild/tags/release_2_4_0 fpcbuild

Actualmente puede resultar algo difícil obtener el árbol completo en un shot bajo Haiku. La causa de base es que no se conoce aún (Haiku ? Subversion ? the network ?).

Una alternativa es chequear el repositorio fpcbuild. Esto consume mucho más espacio en disco, pero a cambio se puede actualizar el árbol en caso de descarga parcial.

Obteniendo los binarios para el soporte de depurado en el IDE

A fecha de escribir esto está disponible un paquete que contiene todos los ficheros disponibles en http://olivier.coursiere.free.fr/download/libgdb-6.3-i386-haiku.zip

Extrae este fichero en fpcbuild/fpcsrc/.

En versiones recientes de Haiku (aka con gestión de paquetes), puede que sea necesario instalar algún paquete de desarrollo para enlazar con las librerías GDB:

  • libncurses_devel
Instrucciones utilizadas para compilar las librerias GDB para Freepascal (probablemente deprecated)

Keep for reference of required libraries under Haiku with package management.

A pesar de que puedas compilar GDB por ti mismo, el modo más sencillo (de lejos) bajo Haiku es construir Haiku por ti mismo. Las instrucciones están disponibles en While you can compile gdb on your own, the easiest way (by far) under Haiku is to build Haiku yourself. Instructions http://www.haiku-os.org/development.

Entonces ya puedes colectar todos los ficheros necesarios en el árbol de construcción:

  • libgdb.a en generated/objects/haiku/x86/release/bin/gdb/gdb
  • libbfd.a en generated/objects/haiku/x86/release/bin/gdb/bfd
  • libiberty.a en generated/objects/haiku/x86/release/bin/gdb/libiberty
  • libopcodes.a en generated/objects/haiku/x86/release/bin/gdb/opcodes
  • libreadline.a en generated/objects/haiku/x86/release/bin/gdb/readline
  • libintl.a in generated/objects/haiku/x86/release/bin/gawk/intl/
  • libgcc.a in /boot/develop/abi/x86/gcc2/tools/gcc-2.95.3-haiku-081024/lib/gcc-lib/i586-pc-haiku/2.95.3-haiku-081024 (you may have to adapt the path to the installed gcc version on your machine).

Sitúa estos ficheros en una subcarpeta libgdb dentro de fpcsrc (en las carpetas correspondientes >/<architecture>) :

fpcbuild/fpcsrc/libgdb/haiku/i386

Obteniendo documentación

Puedes obtener el paquete más reciente de documentación desde el sitio ftp, se llama doc-pdf.tar.gz , lo puedes copiar dentro del directorio fpcbuild/. Deberías situar este fichero en la raíz del directorio del directorio fuente, aka en fpcbuild.

En caso de una release candidate oficial o de una versión final deberías preguntar el fichero al coordinador de la release.

Construyendo paquetes

Cambia al directorio fpcbuild/, a continuación ejecuta:

 install/makepack
Construir con versiones antiguas de Haiku (antes de hrev46213)

pre-2.4.0 specific : si haiku no se encuentra en la variable UNIXs al principio de Makefile, entonces tendrás que generarla con fpcmake (al menos desde r14324). Si no, el script de instalación adaptado para Haiku no funcionará plenamente. Aquí está la línea de mandato para hacer esto:

 fpcmake -Tall -r

Haiku es bastante similar a unix como para utilizar Freepascal's unix scripts y generar una distribución binaria. Desafortunadamente, no existe un trayecto /usr/bin bajo Haiku. Por tanto, todo esto no funcionará. Una tarea a realizar por tanto sería ejecutar un script con sh directamente.

Cambiar dentro de fpcbuild/, después ejecutar.

 sh install/makepack

Este shell script crea el paquete.