PDA

Ver la versión completa : ¿SQLite en GP2X?



bufalo_1973
07/11/2008, 01:59
Aunque hace tiempo leí algo sobre que había un port de SQLite a GP2X, ahora, por más que busco, no consigo encontrar ninguna referencia. ¿Alguien sabe la dirección donde se puede encontrar o el método para compilarlo para la GP2X? Estoy necesitando esa librería porque el programa que estoy intentando hacer es bastante más fácil con una base de datos, por básica que sea, que tirando de TXT.

jcom
07/11/2008, 02:40
Para Linux con OPEN2X he conseguido compilarlo con lo siguiente:



$ export CFLAGS="-I$OPEN2X/include"
$ export LDFLAGS="-L$OPEN2X/lib -static"
$ export PATH=$PATH:$OPEN2X/bin
$ ./configure --host arm-open2x-linux --prefix=$OPEN2X
$ make install


No sé si funciona porque no lo he probado, pero compilar, compila.

EDIT:
Como no es difícil imaginar, la variable de entorno OPEN2X tiene que estar declarada en algún lado de tu sistema.

hardyx
07/11/2008, 18:06
¿Qué os ha hecho la pobre consola para que le queráis meter una base de datos relacional? Yo creo que la mejor solución sería usar ficheros binarios indexados de toda la vida, o si no son muchos datos un fichero Ini o xml. Ganarás memoria y eficiencia. También hay librerías para manejar ficheros dbase de código abierto que pueden ser útiles.

bufalo_1973
07/11/2008, 20:00
Que yo recuerde, SQLite precisamente es una BDD muy ligera. Está claro que un PostgreSQL no le entra (o muy apretado), pero SQLite se hizo para no necesitar un servidor pesado. Y estaría bien que ya estuviera compilado y colgado para descarga, que más de un juego y más de una utilidad se podrían beneficiar de usarla.

jcom
09/11/2008, 21:46
He podido probar un poco el sqlite3 compilado y parece que funciona. En mi test usé una base de datos de un diccionario inglés-español de unos 50 megas y tardaba unos 10 segundos en devolver resultados. Me imagino que con la base de datos cargada las siguientes consultas tardarían menos.

Ahí dejo los binarios y los ficheros de cabecera.

EDIT: Actualizados los binarios compilados con opciones de optimización

Aiken
09/11/2008, 22:28
que alguien lo ponga en noticias! :)

bufalo_1973
10/11/2008, 01:19
jcom, una sugerencia: hazle un strip, a ver en cuanto se queda.

jcom
10/11/2008, 11:27
jcom, una sugerencia: hazle un strip, a ver en cuanto se queda.

¿Hacerle un strip a los binarios tiene impacto en la velocidad de ejecución? Ya puestos probaré con diferentes opciones de compilación por si influye en algo.

bufalo_1973
11/11/2008, 09:52
un strip no creo que influya mucho sobre la velocidad, pero teniendo en cuenta la memoria de la GP2X, mejor que trague poco. Además, se pueden dejar colgadas las 2 opciones, con símbolos para desarrollo y sin símbolos para uso normal.

Bizkaitarra
11/11/2008, 11:04
Sería muy grande tener una mini BBDD en Gp2x.. estaría bien para mi aplicación aprueba oposiciones (cuando apruebe todo de la uned de este trimestre...)

jcom
13/11/2008, 03:02
He actualizado los binarios compilados con los siguientes flags:

-O2 -fstrict-aliasing -mcpu=arm920 -mtune=arm920t

Con esas opciones y la base de datos del diccionario en lectura se gana alrededor de un 50 % (operaciones de lectura que antes tardaban unos 20 segundos se hacen ahora en 10). La velocidad como veis tampoco no es que sea para tirar cohetes. Supongo que con una base de datos más pequeña las lecturas serán más rápidas.

El hacer strip o no del programa no influye en la velocidad de forma apreciable y en el caso de las librerías, hace que no se pueda enlazar a ellas, como parece lógico una vez que piensas en ello.