Sign in Join
Wiki copytemporary

Revision 3 of 6, by WikiArchive on 11-4-2026. The page as it is now.

GeckoPort version2/es

Licencia

MPL 1.1

Instalación

Hay un paquete de fpmake para GeckoPort en el repositorio de Free Pascal. Para instalar el paquete de GeckoPort en su sistema:

pascal
fppkg install gecko

Para compilar una aplicación de ejemplo:

Ten en cuenta que necesitas tener las librerías de Gecko instaladas antes de poder ejecutar una de las aplicaciones de ejemplo. Si es necesario, utiliza un instalador desde aquí

Desarrollo

Puedes bajar las fuentes de GeckoPort del Lazarus-ccr usando Subversion:

pascal
svn co https://lazarus-ccr.svn.sourceforge.net/svnroot/lazarus-ccr/components/geckoport/version2 [ruta al directorio local]

Para instalar esta versión. ve a directorio local y usa

pascal
fppkg install -o -gl

. Los parámetros '-o -gl' son para incluir información de depuración.

Para Hacer (To Do)

Win32

Las aplicaiones de ejemplo ChromeWin y GBrowser funcionan igual que las de Delphi.

Actualmente, el código busca xulrunner en el siguiente orden:

Con Free Pascal 2.5.1 y 2.4.x en Windows, debes deshabilitar las excepciones de coma flotante, tan pronto como sea posible en tu programa. Añadir la unidad Math en la cláusula uses y agrega la siguiente instrucción al principio de tu programa:

pascal
SetExceptionMask([exInvalidOp, exDenormalized, exZeroDivide, exOverflow, exUnderflow, exPrecision]);

Ten en cuenta que esto deshabilitarás excepciones de coma flotante en todo el código, no sólo para las librerías de Gecko. Mira los archivos .dpr de las aplicaciones de ejemplo cómo añadir este código.

El xulrunner de Firefox funciona, comprobado con Firefox 3.6.12, pero el ejecutable de la aplicación debe estar en la misma carpeta que Firefox o la plicación se colgará.

Carbon

Una ventana nativa debe ser pasada al componente de explorador al iniciarlo. En OS X, debe ser una ventana Cocoa, de lo contrario la interfaz Carbon no funcionará.

Cocoa

Aunque la interfaz Cocoa en la actualidad sólo soporta TForm y uno o dos controles, la aplicación de ejemplo ChromeWin puede funcionar con Cocoa ya que utiliza sólo TForm.

Ten en cuenta que el paquete GeckoPort utiliza ahora la nueva interfaz Cocoa basada en Objective Pascal en lugar de la antigua basda en PasCocoa. Para compilar la interfaz Cocoa basada en ObjC necesitarás una versión de la FPC, que incluya soporte para Objective Pascal (por ejemplo, la versión 2.6 o superior, o compilado a partir de la rama actual de FPC SVN)

También tendrás que establecer Cocoa como el tipo Widget LCL para la aplicación, ya que por defecto es de Carbon. O puedes compilar ChromeWin.lpi con lazbuild y especificar --ws=cocoa. Mira el archivo lb-cw-cocoa.sh para un ejemplo.

Para ejecutar la aplicación de ejemplo ChromeWin, es necesario establecer DYLD_LIBRARY_PATH para que la librería XUL pueda cargar las otras librerías de Gecko de las que depende. Una manera simple de hacer esto es lanzar la aplicacióna ChromeWin mediante el guión cw-mac.sh. Ten en cuenta que este guión supone que tienes instalado el marco de trabajo de XUL.

La aplicación de ejemplo GBrowser no funciona a causa del estado actual incompleto de la interfaz Cocoa.

GTK2

En Linux, asegúrate de establecer la variable de entorno LD_LIBRARY_PATH al directorio xulrunner antes de ejecutar una de las aplicaciones de ejemplo. Por ejemplo

pascal
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/xulrunner-1.9.1.4

El código de detección de Gecko en Linux obtiene la variable de entorno LD_LIBRARY_PATH y busca un XULRunner adecuado en las rutas de la misma.

Actualmente las aplicaciones de ejemplo funciona en Linux/Ubuntu 9.04 con Lazarus 0.9.29 y FPC 2.5.1 con algunos problemas de dibujo que espero se resuelvan pronto y que parecen estar relacionados con la interfaz de GTK2.

Por favor, informa del éxito o del fracaso de las pruebas al responsable de GeckoPort:

pascal
"José Mejuto" joshyfun (at) gmail (dot) com (_Responsable actual_)
     MacPgmr (at) fastermac (dot) net (_Responsable original_)

Ver también


From the Free Pascal wiki, page "GeckoPort version2/es", as the Internet Archive kept it on 2022-10-01. 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.