efegea
24/09/2007, 16:39
Soy un fanático de añadir sistemas de plugins a mis proyectos, como el media center o el motor 3D. Pensad lo que querais pero progamar algo con soporte de plugins me pone cachondo :lol:
Bueno, a lo que iba.
Normalmente un plugin consiste en una librería de enlace dinámico (.dll, .so) que se carga dinámicamente durante la ejecución del programa.
Hasta ahora todo bien, pero ¿que hacer cuando una determinada plataforma no soporta librerías de enlace dinámico? Como por ejemplo una consola (descartamos GP2X al llevar ésta linux que SI los soporta)
¿Alguién sabe como solventar este problema? Algunos diréis, ¿y porqué no los enlazas estáticamente? En ese caso no podría "descubrir" qué plugins hay y pedirles que se autoregistren en la aplicación. Es decir, en mi código actual del media center, el pluginManager mira todos los plugins que hay en un directorio y los carga, acto seguido les pide información y los registra. Esto no lo podría hacer si lo hubiese compilado estáticamente, ¿sabéis si es posible de otra forma?
Espero haberme explicado bien >_<
Bueno, a lo que iba.
Normalmente un plugin consiste en una librería de enlace dinámico (.dll, .so) que se carga dinámicamente durante la ejecución del programa.
Hasta ahora todo bien, pero ¿que hacer cuando una determinada plataforma no soporta librerías de enlace dinámico? Como por ejemplo una consola (descartamos GP2X al llevar ésta linux que SI los soporta)
¿Alguién sabe como solventar este problema? Algunos diréis, ¿y porqué no los enlazas estáticamente? En ese caso no podría "descubrir" qué plugins hay y pedirles que se autoregistren en la aplicación. Es decir, en mi código actual del media center, el pluginManager mira todos los plugins que hay en un directorio y los carga, acto seguido les pide información y los registra. Esto no lo podría hacer si lo hubiese compilado estáticamente, ¿sabéis si es posible de otra forma?
Espero haberme explicado bien >_<