PDA

Ver la versión completa : ¿Compilación estática o dinámica?



ch3m4
04/02/2006, 14:21
Este es mi primer mensaje en el foro. Llevo tan sólo dos días programando la gp2x y estoy resolviendo más o menos los problemas que voy teniendo. Pero todavía no me aclaro si es conveniente compilar estática ó dinámicamente.

Al parecer la glib que lleva la gp2x es bastante vetusta (2.2.5), por lo que todos los entornos de desarrollo disponibles para linux utilizan una librería más moderna (2.3.5). Ésto obliga a compilar siempre estáticamente. ¿Hay realmente alguna ventaja en usar una versión moderna de glib o se podría seguir utilizando la 2.2.5 para aprovechar el linkado dinámico?

PD: En estos momentos he conseguido hacer funcionar el lenguaje Lua en la GP2X. Con lo que me digáis en vuestro comentarios acabaría el port para dejarlo disponible como un lenguaje más para la GP2X.

Whitehat
04/02/2006, 15:31
Hombre no se muy bien las diferencias, pero si tu no le has encontrado ningun
fallo a tu trabajao, pues siempre se puede compilar estaticamente, ya se q es mas incomodo
pero nose, hasta q no se actualicen mas las cosas nose si tendremos Glib mas moderna.

Y gracias por tu trabajo en dos dias y BIENVENIDO A ESTA NUESTRA COMUNIDAD [wei5]

WinterN
04/02/2006, 21:47
Si consigues un entorno que permita compilar dinámicamente, muchos te lo agradeceremos. :brindis:

Quizá sea algo tan simple como ese cambio de versión que dices. Yo como no soy muy entendido en ese tema, sólo se que si compilaba dinámicamente no me funcionaba y estáticamente si...

Wild[Kyo]
04/02/2006, 21:47
Bievenido a esta, nuestra comunidad. :D

Otro coder más que se apunta a la GP2X. Es una muy buena noticia. Esperamos ver cositas tuyas pronto! :) Que disfrutes de tu nueva consola. :D

Uncanny
04/02/2006, 22:29
Hay alguien que se curro un script para tener un toolchain para poder compilar dinámicamente las aplicaciones, usando la version 2.2.5 de GLIBC (usando el buscador del foro se puede encontrar). El problema que yo le veo a este tema de la compilación dinámica es que, salvando la diferencias de la versión de GLIBC y las compatibilidades del ABI (creo que del ABI de C no hay problema en la compilación dinámica entre versiones diferentes de GLIB 2.x pero si en la del ABI de C++) para poder usar aplicaciones compiladas dinámicamente habría que tener en cuenta el conjunto de todas las librerías (a parte de la GLIBC) de las que se hagan uso en un programa concreto a la hora de compilar (libogg, libvorbis, libSDL, etc) ya que o se llega a una especie de estandar para usar determinadas versiones de cada librería en la GP2X (e incluirlas en la ruta adecuada de la propia NAND de la GP2X como al principio se tuvo que hacer con los emus de NK) o se incluyen los objetos compartidos / librerías dinámicas (.so) junto con la aplicación.

Si existiera un SDK oficial o al menos uno no-oficial que todo el mundo usara las mismas versiones de las herramientas del toolchain, rutas y librerías, la compilación dinámica no sería un problema (mirad cualquier distro de Linux, como Debian por ejemplo, todo se compila dinámicamente y con APT se resuelven las dependencias instalando las librerías necesarias). De todas formas la compilación estática no es un problema demasiado grande, no voy a entrar en el terreno de que es más optimo o no según que aplicación, ese es ya otro tema.

Respecto al lenguaje Lua, no se mucho, solo tengo entendido que es un lenguaje de script compilado pero con cierto parecido con Java en lo de usar una VM y que se ha usado en algunos juegos comerciales y aplicaciones, así que parece interesante tu proyecto de portarlo para usar este lenguaje en la GP2X :brindis:

ch3m4
05/02/2006, 01:04
Ya encontré en el foro un mensaje de Bitrider (http://www.gp32spain.com/foros//showthread.php?t=25993) donde se explicaba cómo conseguir ése entorno para glib 2.2.5. Mis dudas iban más sobre si valía la pena matarse en conseguir compatibilidad "dinámica" o era mejor asegurar un buen funcionamiento con compilación estática. Ya veo que me aconsejáis ésto último.

En cuanto a Lua, es un lenguaje de script similar a python, de sintáxis más simplificada que se integra muy bien con aplicaciones en C/C++ y que resulta muy adecuado para sistemas empotrados con escasa RAM. Ya lo he hecho funcionar en la GP2X. Ahora mi intención sería añadirle módulos como el que permita manejar las SDL.

Uncanny
05/02/2006, 01:13
En cuanto a Lua, es un lenguaje de script similar a python, de sintáxis más simplificada que se integra muy bien con aplicaciones en C/C++ y que resulta muy adecuado para sistemas empotrados con escasa RAM. Ya lo he hecho funcionar en la GP2X. Ahora mi intención sería añadirle módulos como el que permita manejar las SDL.Y en el aspecto de aprender como usarlo ¿hay bastante documentación o tutoriales sobre el uso de Lua y del modulo luaSDL?

BuD
05/02/2006, 02:46
Ya que has portado Lua, a lo mejor te interesa esto:
http://www.evl.uic.edu/rlk/electro/
Creo que faltaria portar LuaSockets (aunque es tonteria de momento, no hay ningun tipo de conexion para la GP2X) y el ODE.

PD: Es del tio que creo Neverball, un juego de los mejores que hay para Linux.
El autor es un crack, se curro un sistema fisico de cuerpos solidos desde cero para Neverball.

EDIT: Creo que es imposible, el 2D lo dibuja bajo OpenGL, pensaba que se podria usar 2D...

ch3m4
05/02/2006, 09:22
Ya he visto lo de electro. Lástima que se quede fuera de las posibilidades de la GP2X. De todos modos, intentaré llegar todo lo lejos que pueda ser con lua. Tal vez lo que haga no sirva para la GP2X F100, pero siempre será un buen comienzo para lo que venga detrás (F200? XPG?).

PD: Por cierto, mi experiencia con Lua es casi nula. Yo soy experto en programación en python, y mi intención es programar la GP2X en pygame. Conocí Lua cuando necesité programar una Palm y no encontré un python decente. Creo que lua es una buena alternativa en sistema pequeño, y por éso me decidí a a portarlo a la GP2X.

ilarri
05/02/2006, 16:17
De todos modos, intentaré llegar todo lo lejos que pueda ser con lua. Tal vez lo que haga no sirva para la GP2X F100, pero siempre será un buen comienzo para lo que venga detrás (F200? XPG?).

.

^^, primero esta genial tu colaboracion,añadir nuevos ports siempre es positivo =),para cualkier consola.El problema esk dices k kizas lo k hagas no valga para la gp2x..sinceramente lo mejor k puedes hacer es k valga para ella, pk te digo, oficialmente, la gp2x aun no ha salido, las consolas k hay son como una alpha en un programa comercial....no te esperes a un gp2x f100 o f2000 pk kizas nunca llegue a verse...y aun menos la xgp...k NO sera opensource, y sera integramente para juegos comerciales...si algun dia llega a salir...pk al paso k van...

Lo dicho, centrate en aplicarlo para la gp2x, optimizarlo, ver posibles juegos o soft utlies en la gp2x k esten interesantes, y ciernete a lo k hay ahora, no a la posibilidad de un futuro incierto :) no se si me entiendes....gp2x esta aki y ahora, la gp2x f100 es un proyecto....