martes, 14 de octubre de 2008

OpenCobol en Debian / Instalacion

Ok, de acuerdo, COBOL es todo un tema para quien se dedica a la informática.
Tan odiado como utilizado, despierta pasiones y discusiones en cualquier lugar donde se hable de el.
Todo lo que voy a decir al respecto es: Si no te interesa, no sigas leyendo.
Punto y aparte.

Partiendo de un sistema Debian 4.0 Etch recién instalado y siguiendo estos simples pasitos, deberíamos tener un entorno de programación retro para practicar la mejor implementación libre de COBOL que conozco: OpenCobol

Vamos a preparar el entorno:
Como siempre
    sudo apt-get update
Instalemos todas la dependencias que OC va a necesitar. Es una linea larga así que darle duro al C&P
    sudo apt-get install build-essential libltdl3 
libgmp3-dev libgmp3c2 libdb4.4 libdb4.4-dev libncurses5
libncurses5-dev
Esto a su vez instalara otros paquetes necesarios para cubrir otras dependencias.
Una vez concluida esta tarea debemos descargar el tar.gz con las fuentes del OC.
A la fecha de publicación de esta nota, OC se encuentra en su versión 1.0.0 y esta a punto de editar la 1.1.0 con importantes mejoras.
A decir verdad la rev 1.0 es bastante incompleta. Y hasta el lanzamiento oficial, Roger While (uno de los desarroladores) publica semanalmente un pre-release en su sitio web.
Por lo tanto, para obtener este archivo y compilarlo debemos hacer:
    en el directorio del usuario:
mkdir temp
cd temp
wget www.sim-basis.de/open-cobol-1.1.tar.gz
tar -zxvf open-cobol-1.1.tar.gz
./configure
make
sudo make install


Para corregir un problema con las librerías de cobol que son instaladas en otros directorios fuera del standard debemos ejecutar:

    $ export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH
sudo ldconfig
Hecho todo esto, solo nos queda editar y compilar el famoso Hola Mundo.
Creamos un archivo llamado hola.cob y escribimos lo siguiente en el (recordar que en formato fijo, debemos poner las sentencias empezando en la columna 8)

       IDENTIFICATION DIVISION.
PROGRAM-ID. HOLA.
ENVIRONMENT DIVISION.
DATA DIVISION.
PROCEDURE DIVISION.
DISPLAY "Hola Mundo!".
STOP RUN.


Recuerda, la I de IDENTIFICATION debe estar en la columna 8 !!!!!!!

Para compilarlo y ejecutarlo:
        cobc -x hola.cob
./hola


Y, si todo salio bien, ya podemos empezar a revisar esos programas que hace 20 años escribimos y aggiornarlos a las nuevas sintaxis.

Sugiero tener una pestaña del navegados siempre abierta en el foro de OC Hay muy buena información y muy buena gente rondando por ahí.

No hay comentarios: