Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: josevc en 15 Marzo 2015, 00:53 am



Título: Allegro
Publicado por: josevc en 15 Marzo 2015, 00:53 am
Buenas, he creado un programa con la librería Allegro y C++. Compilo desde CodeBlocks y perfecto, no hay ningún error y se ejecuta el programa correctamente. El problema es el siguiente:

Me voy a la carpeta del proyecto, bin/debug/ aquí tengo mi ejecutable. Pero al ejecutarlo se aborta el programa sin llegar a mostrar nada... Es raro, solo me pasa al utilizar Allegro  :huh:

¿Alguien sabe a que puede deberse?

Gracias


Título: Re: Allegro
Publicado por: vangodp en 15 Marzo 2015, 11:46 am
normalmente debes poner alguna dll que contiene allegro junto, si no se compila de forma estática para que la dll vaya ya incluida dentro del exe.

Pero como no trabajo con allegro no te puedo decir cual es la dll. Si fuera SFML ya seria otra cosa ><

Normalmente esas dll se encuentran dentro de la carpeta donde esta allegro, en alguna subcarpeta llamada bin o algo así, dentro tendrá librerias similares a alleg5.dll, o alleg5.dll, los nombres me los estoy inventando ya que no se cual es exactamente, el archivo puede llamarse de otra forma, es para que te guíes. Pegas algunos de esos archivos junto al .exe y prueba ejecutar el programa, haz eso hasta que encuentres el dll correcto, puede que lleve mas de uno.

Otra cosa es que el programa te diga el nombre del archivo que falta, entonces así es mas fácil buscarlo entre esos archivos.

Suerte.


Título: Re: Allegro
Publicado por: NOIS en 15 Marzo 2015, 13:33 pm
vanqodp tiene razón, lo más probable es que te falte añadir la dll que necesita, pero si es ese el problema lo habitual es que al ejecutar el programa y saltarte el error te indique cual es exactamente el archivo que falta.

Saludos!


Título: Re: Allegro
Publicado por: josevc en 16 Marzo 2015, 16:27 pm
Hola, ante todo gracias por responder.
Citar
Normalmente esas dll se encuentran dentro de la carpeta donde esta allegro, en alguna subcarpeta llamada bin o algo así, dentro tendrá librerias similares a alleg5.dll, o alleg5.dll, los nombres me los estoy inventando ya que no se cual es exactamente, el archivo puede llamarse de otra forma, es para que te guíes. Pegas algunos de esos archivos junto al .exe y prueba ejecutar el programa, haz eso hasta que encuentres el dll correcto, puede que lleve mas de uno.

He estado probando eso, aunque no ha habido exito.
Citar
pero si es ese el problema lo habitual es que al ejecutar el programa y saltarte el error te indique cual es exactamente el archivo que falta.

El programa se aborta sin indicarme que me falte algún archivo... Aunque si abro el proyecto desde CodeBlocks (o cualquier otro) y lo ejecuto va perfectamente. Es extraño... seguiré investigando  :-\



Título: Re: Allegro
Publicado por: NOIS en 16 Marzo 2015, 22:19 pm
Prueba a compilar el programa con otro IDE  o a actualizar el compilador del CodeBlocks, puede que esté relacionado con eso.

Suerte y saludos!


Título: Re: Allegro
Publicado por: AlvaroGPE en 29 Mayo 2019, 01:50 am
Es fácil, solo tienes que mover el contenido de la carpeta debug a la carpeta principal, ya que si lo ejecutas desde la carpeta debug el ejecutable no encuentra ninguna información para correr, es por eso que tienes que tienes que mover el ejecutable junto al archivo creado por allegro a la carpeta principal donde se encuentra el main.cpp y los otros archivos bmp, mid, wav y demás que utilizaste. Suerte!!!