Cita:
Iniciado por dehm Con respecto a las 2 primeras preguntas, me refería más bien a si es normal la forma de trabajar en la que se trabaja con librerías dinámicas en lugar de los propios archivos cpp.
Para tí debería ser prácticamente lo mismo. El cambio más significativo que hay que hacer en el proyecto es añadir un par de líneas para que el compilador enlace con la DLL... una vez hecho eso a ti te va a dar igual si el código está en una DLL o en otra o si es código propio porque las llamadas son exactamente las mismas.
Cita:
Iniciado por dehm Y sobre la otra pregunta, es todo GPL. Me refería más bien a que si yo me puedo liar la manta a la cabeza, y en lugar de hacer las cosas como sugieren los desarrolladores (usar las librerías dinámicas), encender varias velitas a Santa Tecla y a San Cucufato, e intentar hacer uso de los cpp, que es la forma en la yo siempre lo he hecho.
Las DLL vienen ya compiladas, es decir, el proceso de configurar el proyecto para compilar esa librería, cargar sus dependencias, etc... ya está hecho!!!!
Ellos te ofrecen el código compilado y las cabeceras necesarias para que tu código compile... eso es lo único que necesitas.
Cita:
Iniciado por dehm Con respecto a la tercera cuestión, pues ese es el problema, que pienso que compilando de esta forma tendré menos oportunidades de detectar errores (asumo que puedo estar diciendo muchas tonterías).
En este mundo hay que aprender a delegar... tienes que presuponer que las librerías que te ofrecen funcionan correctamente. En caso contrario lo más normal es crear una incidencia y darles tiempo para que lo arreglen.
Los grupos mínimamente serios suelen sacar versiones bastante probadas... puede que tengan algún fallo crítico, pero no suele ser lo habitual.
Cita:
Iniciado por dehm De hecho, compilo sin problemas, pero al ejecutar todo el error que tengo es este:
...realloc(): invalid pointer: 0x00007f604b2c0d60 ***
The program has unexpectedly finished.
Pienso que hay un puntero apuntando a donde no debe, pero....
Efectivamente tiene toda la pinta de que no has inicializado algo correctamente o se te ha pasado inicializar algun elemento de la librería. Siempre puedes usar el depurador para saber en qué parte de tu código se está haciendo la llamada fatídica... eso te dará pistas para continuar.
Cita:
Iniciado por dehm Con respecto a la cuarta cuestión, no veo mucha documentación al respecto. De nuevo pienso que si me descargo los fuentes completos, headers y cpp, será la mejor forma de no equivocarme en este respecto.
Ver código fuente no tiene por qué ayudarte a entender cómo funciona algo de la misma forma que ver el interior de un generador nuclear no te ayuda a entender por qué funciona... es una opción que puedes intentar, pero te puede llevar bastantes quebraderos de cabeza conseguir que esa librería te compile... estás avisado!!!!
Un saludo