Voy a explicar como poder instalar la librería LiDIA en la distribución OpenSuse 11.0 y como compilar los ejemplos dados en clase de Métodos Matemáticos para la Criptología, la cual me he matriculado este año. Espero que os resulte de utilidad.
Paso 1
ara empezar debemos comprobar que tenemos instalados los siguientes paquetes:
- make (GNU make)
- gcc (The system GNU C Compile)
- gcc-c++
- gmp (GNU MP Library)
- gmp-devel (GNU MP Library de Desarrollo)
- cln (Class Library for Numbers C++)
- cln-devel (Class Library for Numbers C++ de Desarrollo)
Paso 2: Nos bajamos el archivo lidia-base-2.2.0.tar.gz . Es lo más recomendable bajarte esta versión, que como dice es “base”, es decir, tiene los ficheros básicos. Lo descomprimimos por ejemplo en el Escritorio. A continuación, renombramos la carpeta lidia-2.2.0 a LiDIA.
Paso 3: Nos bajamos el parche para compiladores gcc 4.x: parche .Le cambiamos la extensión de .bin a .gz
Paso 4: Abrimos un terminal o nos situamos en el escritorio. Ejecutamos el comando:
> zcat attachment.gz | patch -p1
Si todo ha ido correctamente aparecerán varias lineas con Hunk #1 succeeded. Si no es así, vuelve a los pasos anteriores y comprueba que los realizas todos de forma correcta.
Paso 5: nos metemos en la carpeta LiDIA.Ejecutamos el Comando:
> ./configure
Si todos ha ido correctamente, las dos últimas lineas serán:
/LiDIA/kernel/udigit_interface.h
config.status: executing depfiles commands
Paso 6: Lo compilamos con el comando:
> make
Paso 7: Nos metemos como root y ejecutamos:
> make install
Paso 8: la librería en este momento ya está instalada en el sistema. Los archivos de la instalación los podemos encontrar en: /usr/local/include/lidia
Con un terminal nos situamos en: /usr/local/include/ y cambiamos el nombre del directorio con el comando:
> mv lidia LiDIA
Paso 9: en este paso necesitaremos modificar el fichero make y prueba.c.
En el fichero Makefile sustituiremos la linea:
g++ $(OPT) $< -I/tools/lidia/include -L/tools/lidia/lib -o $@ -lLiDIA -lgmp -lm
por
g++ $(OPT) $< -I/usr/local/include/LiDIA/ -L/usr/local/include/LiDIA/ -o $@ -lLiDIA -lgmp -lm
Y en el fichero prueba.c sustituiremos la linea: #include <iomanip.h> por #include <iomanip>
y añadimos a continuación de la linea using namespace LiDIA; esto: using namespace std;
Paso 10: ya solo queda hacer make prueba y ver que la compilación del fichero ha sido correcta.
Añadir por último que no hay ningún problema para hacerlo en una 32 o 64 bits.
Un Saludo