Categoría fpclazarus

  • Ultimamente estoy usando Lazarus, freepascal y lazreport (Llevo dias pensando en hacer una entrada para contar las lindezas de este RAD y todo lo que lo envuelve, a ver si saco un hueco e inspiracion... ;).

    Comentarios: 0
  • En la entrada anterior comentaba que queria hacer un pequeño review sobre freepascal y su RAD lazarus.

    La verdad es que no he tenido ni que encontrar tiempo ni inspiracion ya que el amigo SiR-HaCk ya lo habia hecho, os dejo el enlace.

    Lenguaje de programación Lazarus FPC multiplataforma

    Espero que os pique tanto la curiosidad sobre este mundillo como a mi :D

    Comentarios: 0
  • Manual en dos entregas de la mano de la gente de Gleduwiki, imprescindible para conocer a fondo freepascal.

    Manual de FreePascal (Parte 1) // copia local
    Manual de FreePascal (parte final) // copia local

    Comentarios: 0
  • En esta entrada no se va a tratar nada nuevo que no haya sido explicado en Getting_Lazarus/es o en Connect to Source Repository with SVN, simplemente es una guia paso a paso para tener trabajando sobre windows la version SVN de freepascal y lazarus.

    Comentarios: 0
  • Desde hace unos dias ya disponemos de lazreport como parte de Lazarus. Fue añadido por Jesus Reyes en la revision 11950 de la rama trunk:

    lazarus: jesus * r11950 /trunk/ (233 files in 20 dirs) : Added LazReport components

    Espero que se establezca, mas aun, como estandar de facto para el diseño de informes en Lazarus.

    Por otro lado ha salido una nueva version estable de freepascal, a continuacion el anuncio de Joost van der Sluis que ha echo publico a la lista:

    Comentarios: 0
  • Por lo que parece ya no hay gtk1 en gentoo asi que a la hora de compilar lazarus hay que hacerlo de la siguiente forma :

    make LCL_PLATFORM=gtk2

    PD: Solo habia que mirar en el .ebuild del portage pero como no cai a la primera perdi algo de tiempo... ;P

    Comentarios: 0
  • Como se comenta en Lazarus Development y se puede adivinar en el commit 12750 (vincents * r12750 /tags/lazarus_0_9_24: Tagged for Lazarus 0.9.24 release) se ha "etiquetado" para su empaquetamiento y distribucion como version estable.
    Supongo que vendra con fpc 2.2.1 ya que va siendo habitual en los snapshots desde el lanzamiento del compilador.

    En fin, un poco de paciencia o probar suerte con la version SVN ;)

    Comentarios: 0
  • INSTALACIÓN:

    Primero hemos de descargar la siguiente versión de Lazarus:

    Lazarus-0.9.23-fpc-2.1.5-20070716-win32.exe

    La instalamos en c:\lazarus

    Nos descargamos también la siguiente versión de cross-arm-wince:

    Lazarus-0.9.23-fpc-2.1.5-20070823-cross-arm-wince-win32.exe

    y la instalamos también en el mismo directorio que el anterior.

    Nos descargamos la librería sqlite3.dll para Win32 y la ponemos en C:\Windows\system32
    Nota: Podemos descargar la librería ya compilada o descargar los fuentes en C y compilarla por nuestros medios con el Dev-C++ 4.9.9.2 por ejemplo.

    Nos descargamos también la librería sqlite3.dll para WinCE (más tarde deberá de ponerse en la carpeta en la que esté el ejecutable de nuestra aplicación). Al igual que en el caso anterior podemos compilar los fuentes en C y obtener dicha librería.

    Abrimos Lazarus, vamos a Componentes/ Abrir Archivo de paquete (.lpk) ... y seleccionamos el archivo C:\lazarus\components\sqlite\sqlite3laz.lpk

    Hacemos click en Instalar, esto hará que se instale el paquete necesario para utilizar SQLite, se recontruirá Lazarus, este se cerrará y se volverá a abrir (si no se ha puesto el archivo sqlite3.dll para Win32 en la carpeta C:\Windows\system32 Lazarus no se abrirá).

    Una vez hecho esto ya tenemos todo lo necesario para compilar una aplicación para WinCE. Pero antes hemos de configurar Lazarus para tal cometido.

    CONFIGURACIÓN:

    Vamos a Proyecto/ Opciones del Compilador ...:

    Primero en la pestaña Rutas:

    En Other Unit Files (-Fu) (Delimiter is semicolon) ponemos lo siguiente:

    $(LazarusDir)\lcl\interfaces\$(TargetOS)\

    Esto hará que el compilador encuentre la unidad interfaces.pp

    En el desplegable Tipo de Widget LCL (various) seleccionamos wince

    daniwince01.jpg

    Después en la pestaña Código:

    En el panel Target Platform:

    En el desplegable OS objetivo: (-T) seleccionamos WinCE

    En el desplegable CPU objetivo: (-P) seleccionamos arm

    daniwince02.jpg

    Una vez hecho esto podemos guardar esta configuración para no volver en un futuro a tener que cambiar los valores a mano. Pulsamos en Cargar/Guardar y hacemos clic en Save to file. Una vez que hayamos guardado la configuración hacemos clic en Aceptar.

    Aun no hemos acabado de configurar Lazarus para que pueda compilar para WinCE, vamos a Entorno/ Opciones del Entorno y en Ruta del compilador (ppc386.exe) cambiamos:

    c:\lazarus\fpc\2.1.5\bin\i386-win32\fpc.exe

    por

    c:\lazarus\fpc\2.1.5\bin\i386-win32\ppcrossarm.exe

    daniwince03.jpg

    Ahora hemos de construir el LCL de Lazarus para WinCE, para ello vamos a Herramientas/ Configure “Build Lazarus” ... seleccionamos wince en Interfaz LCL y ponemos todas las partes a None excepto LCL que la ponemos a Clean+Build y hacemos clic en Construir.

    Una vez hecho esto ya estamos en disposición de poder compilar una aplicación realizada en Lazarus y con SQLite como motor de bases de datos.

    Creamos el código de la aplicación en Object Pascal y la compilamos (Ctrl + F9), una vez hecho esto hemos de añadir el archivo sqlite3.dll para WinCE a la carpeta en la que se encuentre el ejecutable de nuestra aplicación y si todo ha ido bien podremos ejecutar nuestro programa en nuestra Pocket PC o en el emulador de Windows Mobile.

    Una de las cosas que nos llaman la atención nada más empezar a ver resultados es el tamaño del ejecutable que obtenemos al compilar, aproximadamente 10 MB por un formulario vacío. Puede que en Win32 esto nos de igual pero en Pocket PC es importante que el tamaño de la aplicación sea lo menor posible.

    He encontrado dos caminos para paliar este problema, uno de ellos es configurando las opciones del compilador (Proyecto/ Opciones del Compilador .../ Código/ Generar/ Código pequeño (-Og)) y luego desde la línea de comandos utilizar el comando strip:

    strip

    y otro camino factible es usando una librería expresamente diseñada para crear aplicaciones para WinCE, esta librería es KOL-CE.

    INSTALACIÓN DE KOL_CE:

    Descargamos el archivo kol-ce-2.80.zip lo descomprimimos y lo almacenamos en la carpeta c:\lazarus\components\

    Abrimos Lazarus, vamos a Componentes/ Abrir Archivo de paquete (.lpk) ... y seleccionamos el archivo C:\lazarus\components\kol-ce-2.80\mck\MirrorKOLPackage.lpk

    Hacemos click en Instalar, esto hará que se instale el paquete necesario para utilizar KOL-CE, se recontruirá Lazarus, este se cerrará y se volverá a abrir.

    Una vez hecho esto ya tenemos todo lo necesario para compilar una aplicación con los componentes de KOL-CE.

    Veremos los siguientes componentes:

    daniwince04.jpg

    CREANDO UN PROYECTO:

    Para crear un proyecto con estos componentes no se hace del modo usual.

    Primero hemos de crear una aplicación nueva y guardarla en un directorio. Una vez hecho esto ya podemos arrastrar el componente TKOLProject en el formulario, nos vamos a sus propiedades y en la propiedad ProjectDest ponemos el nombre que queramos que tenga nuestra aplicación, por ejemplo prueba.

    Arrastramos el componente TKOLForm en el formulario guardamos todo y cerramos.

    Ahora hacemos clic en Archivo/ Abrir y miramos dentro de la carpeta en la que guardamos antes el proyecto veremos que se han creado más archivos, elegimos abrir prueba.lpi y ahora si, ya podemos trabajar normalmente.

    Si probamos a compilar la aplicación para WinCE obtendremos el siguiente mensaje de error:

    C:\lazarus\components\kol\KOL.PAS(57901) Error: Error while linking

    Esto es porque Lazarus no encuentra la variable de entorno en la que se encuentra el compilador, para subsanar esto hemos de declarar una variable de entorno en nuestro sistema.

    Hacemos clic derecho en MI PC/ Propiedades/ Opciones Avanzadas/ Variables de entorno y en Variables de usuario hacemos clic en Nueva y ponemos lo siguiente:
    En Nombre de variable ponemos: PATH
    En Valor de variable ponemos: C:\lazarus\fpc\2.1.5\bin\i386-win32\ (que es la ruta en la que se encuentran los compiladores)

    daniwince05.jpg

    Una vez hecho esto ya podemos compilar aplicaciones con los componentes de KOL-CE y con las funciones del motor de base de datos de SQLite.

    Comentarios: 17
  • lsopcionesproyecto.jpg

    Comentarios: 2
  • Ya es oficial la nueva version estable de lazarus!

    A continuacion el mensaje de Mattias Gaertner a la lista de correo :

    Comentarios: 0
  • Ultimamente se estan sustituyendo los iconos con un gusto bastante acertado, hace unos dias fueron los del paquete SQLdb...

    09240925-sqldb.jpg

    Y hoy he visto que han cambiado los de la pestaña "Standard"...

    Comentarios: 0
  • Se ha habilitado el acceso a la documentacion de la LCL en http://planetalazarus.alasombra.net/lcl/ (Se intentara actualizar con frecuencia ;) )

    No es mas que un mirror de su version original

    Comentarios: 0
  • En esta entrada se trata como llegar a tener nuestro propio fpc para arm-wince desde SVN y poderlo usar en lazarus.

    Como va siendo habitual no se va a tratar nada que no este en el articulo WinCE port o en el articulo Windows CE Interface del wiki de lazarus.

    Comentarios: 0
  • He hecho un screencast sobre el funcionamiento de LRUT con CamStudio que podeis encontrar en mi espacio de eSnips.

    Bien, despues de esta frase os preguntareis ¿Que es LRUT? ¿Que es CamStudio? ¿Que es eSnips? .

    Pues contesto a modo de telegrama por que ya no son horas...

    - LRUT es una aplicacion a la que llevo unos meses dedicando algo de tiempo libre con el inestimable soporte de jesusra.

    Comentarios: 0
  • El pasado dia 7 se dio a conocer en la web de lazarus el nuevo foro en castellano que podemos aprovechar para exponer dudas, ayudar y compartir conocimientos sobre Lazarus y FreePascal. Lo podemos encontrar en www.hispalazarus.tk

    Tambien me gustaria recordar a los "lazarienses" que disponemos de otros medios para mantenernos en contacto.

    Comentarios: 2
  • Hace un mes y medio abri un ranking en all-rankings.com sobre quien iba a ser el "commiter" que hiciera la revision 15000 de Lazarus ( uno que tiene tiempo para aburrirse el dia de su cumpleaños... :P ) y el ganador del ranking ha sido el mismo que ha hecho el commit! Enhorabuena para Mattias!!! :D

    Comentarios: 0
  • Lazarus Data Desktop es una herramienta desarrolada por Michael Van Canneyt cuyo principal objetivo es mantener un diccionario de datos.
    Se puede encontrar en el directorio tools de Lazarus a partir de la revision 11472.

    Estareis pensando : "La definicion muy bonita pero, ¿que se puede hacer con Lazarus Data Desktop?"

    Comentarios: 0
  • Siguiendo con la saga , se ha habilitado el acceso a la documentacion de la FCL en http://planetalazarus.alasombra.net/fcl/ y la documentacion de la RTL en http://planetalazarus.alasombra.net/rtl

    Los links estan permanentemente en el menu de la derecha del planeta lazarus :)

    PD : gracias Vincent por el tip!

    Comentarios: 6
  • Lo comenta Vincent Snijders en el blog Lazarus Development.
    Como resumen del articulo se puede decir que el pasado 13 de junio salio a la luz la primera release candidate de fpc 2.2.2 y que Lazarus 0.9.26 vendra despues de la salida de la version estable del compilador.

    Empieza la expectación! ;)

    Comentarios: 4
  • MS Access guarda las imagenes en campos de tipo objeto OLE. La informacion que guarda es el stream del archivo .bmp con una cabecera que contiene la aplicacion con la que tiene que abrir el stream. El stream entero es inservible para trabajar directamente con freepascal/Lazarus asi que lo que viene a continuacion es una manera de usar ese objeto OLE para incrustarlo en un Dbf y poder trabajar mas agilmente en Lazarus.

    A continuacion vamos a mostrar distintos contenidos de streams para entender que vamos haciendo.

    Archivo BMP :

    Comentarios: 5
  • Me enteré via /. de la existencia de code_swarm y la verdad es que me dejó sorprendido.

    Para quien no sepa que es podeis visitar la pagina del proyecto, en la que aparecen varios ejemplos, o la web del autor ( Michael Ogawa )

    Sin mas dilacion el video sin audio ( no soy tan manitas con los temas multimedia ;)) :

    Comentarios: 2
  • Siguiendo con la saga... ;)

    httpv://www.youtube.com/watch?v=weVa8IaDyMA

    PD: No esta todo el desarrollo, solo desde que se usa svn para el proyecto, a mediados del 2005...

    Comentarios: 0
  • Pablo Augusto Sznajdleder es el autor del blog HolaMundo.pascal (online) y este blog es un curso de programacion con FreePascal. Va del nivel basico al avanzado tratando los siguientes contenidos :

    1.- Introducción

    Comentarios: 1
  • A partir de las 18:30 (UTC +2) se va a hacer una sustitucion importante en el sistema que nos obliga a estar offline un par de horas...

    Comentarios: 0
  • Essential Pascal es un libro on-line realizado por Marco Cantù y aunque este orientado a Delphi merece mencion ya que esta traducido al castellano.

    Nada mas que comentar, echadle un ojo y opinad vosotros mismos ;)

    Comentarios: 0
  • Despues de 2 meses de la primera release candidate ayer salio a la calle la nueva version estable del compilador de FreePascal, esto siginifica que esta mas cerca el lanzamiento de la nueva version estable de Lazarus, la 0.9.26 ;)

    El anuncio del lanzamiento lo hizo Michael Van Canneyt en la lista de correo y los cambios mas importantes los podeis consultar en el wiki oficial.

    Gracias a todos los involucrados por hacerlo posible.

    Comentarios: 0
  • Con este articulo sabras como integrar la documentacion HTML existente sobre la  Run-Time Library (RTL) , la Free Component Library (FCL) y la Lazarus Component Library (LCL) en Lazarus.

    Primero que nada nos bajamos el archivo ftp://ftp.freepascal.org/pub/fpc/dist/docs-2.2.2/doc-html.zip y lo descomprimiremos en el directorio $LAZARUS_DIR/docs/offline que previamente hemos creado.

    A esa documentacion le falta la referente a la LCL con lo que tenemos varias opciones para obtenerla.

    Comentarios: 4
  • Asi se ve Zeos 6.6.3...

    zeos663

    Y asi se ve Zeos 7

    Comentarios: 4
  • La necesidad de esta implementacion ha sido por que no existen plugins para la monitorizacion de subversion y bacula en nagios ( o almenos no he encontrado ninguno ), luego he visto que existe check_tcp que de momento ya me vale :)

    Lo que hace el programa es intentar conectar a un puerto de una ip y si lo consigue imaginamos que el servicio esta funcionando.

    [sourcecode='delphi']
    program check_port;

    {$mode objfpc}{$H+}

    Comentarios: 0
  • Comentarios: 0
  • La idea inicial de todo esto era proveer a Lazarus de un paquete que le hiciera capaz de interactuar con un servidor Subversion en relacion al proyecto con en el que se esta trabajando. Esto no es nada nuevo ya que IDE's como SharpDevelop o tantos otros que ahora mismo no me vienen a la cabeza ya disponen de esta feature ;P

    Comentarios: 0
  • Escenario: Se requiere lanzar un proceso cada cierto tiempo que la aplicacion este sin hacer nada, o sea, en Idle :)

    Como TIdleTimer no tiene "memoria" creamos nuestra clase TContador ( en honor a nuestro campeon ;P ) dotandole de memoria.

    Comentarios: 0
  • En un post anterior comentaba mi intecion de portar delphisvn a fpc/lazarus manteniendo la misma filosofia pero como iba algo apretado de tiempo hice publico el inicio del port por si alguien se animaba a ir avanzando y de paso me animaba a mi ;)

    Durante este tiempo se ha subido a la rama trunk de lazarus ( desde la revision 17160, hace casi un mes ) un paquete llamado lazSVNPkg que ya hace lo que iba a hacer lazSVN con la diferencia de que LazSVNPkg es un wrapper del binario svn sin ningun interes en los bindings.

    Comentarios: 0
  • Se lee en la lista de lazarus que esta semana Marc Weustink y Paul Ishenin han estado liados haciendo la migracion del antiguo foro al nuevo a un servidor sponsorizado por firmos.at

    La nueva direccion es http://forum.lazarus.freepascal.org y la verdad es que se agracede muchisimo el cambio por el incremento de velocidad para trabajar con el foro :)

    Comentarios: 0
  • Pense que lo habia comentado anteriormente pero no fue asi. Abri el acceso readonly al svn de LRUT pero no lo dije en ningun lado, menos mal que el amigo Leonardo me lo ha recordado y he podido enmendar mi error :)

    Asi que si quereis acceder al codigo de LRUT solo teneis que ejecutar...

    svn co svn://alasombra.net/lrut lrut

    Comentarios: 0
  • Hace mas de un mes del lanzamiento de la RC1 pero no he podido comentar antes el tema del fppkg y como me parece interesante ahi van mis 4 lineas ;)

    Comentarios: 0
  • Mas que un miniTIP es una especie de nota mental para no volver a perder el tiempo en lo mismo.

    De sobra es sabido que si contruyes Freepascal en windows (sin pasarle ningun parametro ) lo instalara en el directorio C:\PP y si hacer lo mismo en linux lo pondra en /usr/local/lib/fpc, podemos modificar el directorio destino de la siguiente manera:

    make clean PP=G:\Desarrollo\fpc\bin\i386-win32\ppc386.exe INSTALL_BASEDIR=G:\Desarrollo\fpc

    Comentarios: 0
  • Despues de 5 meses del lanzamiento de la version 0.9.26 tenemos una nueva version estable que viene con fpc 2.2.2 y con muchos errores corregidos.

    Vincent Snijders nos hace el anuncio del lanzamiento en el foro y en la lista de correo . A continuacion pequeño extracto de rigor de los cambios mas importantes :

    Comentarios: 0
  • Me entero mediante el foro oficial de lazarus de estos premios y como no voy a apoyar al proyecto Lazarus :)

    Fechas importantes para seguir el evento:

    Comentarios: 0
  • Hace nada he subido un screencast a mi espacio de esnips donde muestro rapidamente las nuevas features de LRUT

    Comentarios: 2
  • Para los profanos del lugar voy a hacer una pequeña introduccion para que nadie se pierda ;)

    Dia es un programa para hacer diagramas que soporta UML. Despues de muchas divagaciones me he decantado por el ya que es multiplataforma, almenos para mi :) y por que a partir de el se puede generar codigo automaticamente.

    Comentarios: 1
  • Como nos comenta el amigo Vincent Snijders en la lista de correo de lazarus en su version en ingles se han habilitado las ramas en el svn para centrar el esfuerzo en la correccion de errores.

    La direccion para freepascal es :

    http://svn.freepascal.org/svn/fpc/branches/fixes_2_4/

    y para lazarus :

    Comentarios: 1
  • A partir de la revision 21453 de Lazarus trunk se ha añadido en el directorio tools la aplicacion debugserver.

    Como cuenta en su archivo README es un servidor (usando simpleIPC) que escucha mensajes de debug y los almacena en una lista. Para usarlo no hay mas que poner la unit dbugintf en la clausula uses y enviar los mensajes de debug que queramos (SendBoolean, SendMethodEnter/Exit, SendDebug...)

    Comentarios: 0
  • Ya comentabamos hace poco mas de un mes que se estaba preparando el lanzamiento y ahora ya es oficial la nueva version estable de lazarus!

    Se puede leer las notas de la version en el wiki y os los podeis descargar del sitio de siempre

    Comentarios: 4
  • Menuda manera de empezar el año :)

    Extracto de rigor del anuncio oficial de Marco van de Voort:

    Platforms:
    * New platform: Mac OS X/PowerPC64
    * New platform: Mac OS X/x86_64
    * New platform: Mac OS X/ARM (iPhone)
    * New platform: Haiku/i386

    Comentarios: 0
  • A partir de las 18:30 (UTC +2) se va a hacer una sustitucion importante en el sistema que nos obliga a estar offline un par de horas...

    Comentarios: 0