Foros del Web » Programación para mayores de 30 ;) » C/C++ »

[SOLUCIONADO] Problema con Dev c++

Estas en el tema de Problema con Dev c++ en el foro de C/C++ en Foros del Web. Hola muy buenas, Tengo un problema con la compilación y ejecución de un programa en Dev c++ 5.6.1 Por ejemplo tengo este código: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); ...
  #1 (permalink)  
Antiguo 26/06/2014, 03:39
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Problema con Dev c++

Hola muy buenas,

Tengo un problema con la compilación y ejecución de un programa en Dev c++ 5.6.1

Por ejemplo tengo este código:

Código C++:
Ver original
  1. #include <iostream>
  2. #include <conio.h>
  3.  
  4. using namespace std;
  5.  
  6. int main(){
  7.     cout << "hola mundo" << endl;
  8.  
  9.     getch();
  10.     return 0;
  11. }


El código funciona correctamente, antes cuando me servia el dev c++,

Pero ahora le doy a compilar y ejecutar y me salta este mensaje:

Código C++:
Ver original
  1. Compilador: MinGW GCC 4.8.1 32-bit Release
  2. Building Makefile "C:\Users\Usuario\Desktop\Trabajos\Makefile.win"
  3. Ejecutando  make...
  4. mingw32-make.exe -f "C:\Users\Usuario\Desktop\Trabajos\Makefile.win" all
  5. g++.exe -c main.cpp -o main.o -I"C:/Dev-Cpp/MinGW32/include" -I"C:/Dev-Cpp/MinGW32/mingw32/include" -I"C:/Dev-Cpp/MinGW32/lib/gcc/mingw32/4.8.1/include" -I"C:/Dev-Cpp/MinGW32/lib/gcc/mingw32/4.8.1/include/c++"
  6.  
  7. g++.exe main.o -o Proyecto1.exe -L"C:/Dev-Cpp/MinGW32/lib" -L"C:/Dev-Cpp/MinGW32/mingw32/lib" -static-libstdc++ -static-libgcc
  8.  
  9. Compilation succeeded in 1,06 seconds

Una imagen de como se queda:




Asín se queda y no se muestra el programa....

¿cuál puede ser el fallo?


Saludos!
  #2 (permalink)  
Antiguo 26/06/2014, 10:18
Avatar de vangodp  
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 10 años, 6 meses
Puntos: 38
Respuesta: Problema con Dev c++

Código C++:
Ver original
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main() {
  5.     cout << "hola mundo" << endl;
  6.    
  7.     cin.ignore();
  8.     return 0;
  9. }

Y usas getch solo para pausar el programa? O sea incluyes una librería entera solo para utilizar getch() para hacer una pausa al final?

hay miles de formas de pausar.
un simple scanf o system() o lo que sea. hasta la propia iostream tiene un método que sirve de pausa el cin.get() o cin.ignore() y no tienes que incluir nada mas.

Eso pasa por que no se si dev c++ 5 trae conio de casa. Es una librería desaconsejada ya entre los programadores.

Pero si te hace ilusión es solo instalar el tal coñio.h XD

No vayas agregando librerías a lo loco. Es mas... cuanto menos librerías agregues mejor por que menos dependencias vas a tener.

Intenta utilizar solo librerías estándar y solamente si no puedes evitar ponga una no estándar. Así tienes el código mas portable por que estándar == portable.

vaya a la carpeta include donde esta mingw y mire si esta el archivo conio.h si si esta a lo mejor te falta agregar -lconio en opciones de linkado o algo así.
Si no hay dicha librería busca un dev pack para instalar conio o buscadla a parte y ponla en la carpeta bin de mingw o haga una carpeta aparte para tus libs
  #3 (permalink)  
Antiguo 26/06/2014, 10:56
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Respuesta: Problema con Dev c++

Gracias por su respuesta, pero al final

el problema es que esta desconfigurada la ruta de los archivos en el dev c++, por que si ejecuto el programa desde el .exe va perfectamente usando conio o no,

¿Sabría decirme como configuro las rutas para ese error?

Es que no se me ejecuta el programa desde el dev c++.

Saludos!
  #4 (permalink)  
Antiguo 26/06/2014, 11:33
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Respuesta: Problema con Dev c++

Gracias por su respuesta al final reinstale el dev c++ y funciona correctamente.

Y tendré en cuenta en lo de usar cin.get(); mejor que la librería conio, por que ya veo que tiene buena fama jaja
  #5 (permalink)  
Antiguo 26/06/2014, 16:04
Avatar de vangodp  
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 10 años, 6 meses
Puntos: 38
Respuesta: Problema con Dev c++

Cita:
¿Sabría decirme como configuro las rutas para ese error?
La cuestión de que una librería funcione en otra ruta es que debes declarar la carpeta contenedora de dicha librería en las variables de entorno.
Este es para un archivo determinado
https://www.youtube.com/watch?v=_uqRBHCX3og

Y este es para una carpeta. Este es el que te falta.
Debes añadir una carpeta al PATH y poner las libs dentro.
https://www.youtube.com/watch?v=9oCNCpkFl4Q
Salta todo el vídeo hasta el minuto 9:42 y ahí te explica como agregar una carpeta al PATH.

Recomiendo que la pongas la carpeta en el disco c: y la llames de mislibs o algo así facil de recordar y entonces declaras en el PATH c:\mislibs.

NO BORRES NADA DE AHI QUE TE DEJA DE FUNCIONAR EL PC XD

Hay varios PATHS (rutas) en una misma linea y van separados por punto y coma, entonces vas al final después de la ultima variable de entorno y pones ;c:\mlibs

Eso hace que la carpeta ya tenga el PATH, si pones algún header.h dentro no te va hacer falta hacer el include de la ruta completa sino solo el del nombre del archivo sino vas a tener que teclear la ruta completa sin el path entre ""

Última edición por vangodp; 26/06/2014 a las 16:15
  #6 (permalink)  
Antiguo 27/06/2014, 06:15
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Respuesta: Problema con Dev c++

Gracias por su respuesta me sirvió de ayuda.

El tema quedó solucionado. Un placer.

Saludos!
  #7 (permalink)  
Antiguo 27/06/2014, 20:12
Avatar de vangodp  
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 10 años, 6 meses
Puntos: 38
Respuesta: Problema con Dev c++

otra cosa que se me orvido decir.
quizas si no te funciona haciendo:
#include "milebreria.h"
debas hacer:
#include "mlib/milebreria.h"
o
#include "mlib\\milebreria.h"

no me acuerdo muy bien si era barra invertida o normal el caso es que en el path indicas la carpeta pero si no detecta escribiendo el nombre del archivo solo pon el nombre de la carpeta seguido de una barra(invertida o no no me acuerdo) y el nombre de archivo.
Y ademas tenga en cuenta que cuando pones un texto entre "" estas pasando una cadena y una barra invertida necesitas poner 2 barras invertidas. es como intentar imprimir colmillas dobles, debes poner cout<< " \"Hola\" "<<endl;. Por que al poner una comilla doble cuando pongas la que quieres imprimir se lo va tomar que lo estas cerrando y te va bugar XD pero si pones \" imprime lo que hay detras que es la ". Igual le pasa con el caracter \n. ¿Como crees que el programa sabe que no es para imprimir una barra y una n? simple por que para eso deberias hace \\n XD. Prueba eso: cout << "\\n"; veras que no va saltar la linea si no va imprimir \n talcual.
El problema es que windows usa barras invertidas para navegar entre carpetas y linux barra normal. El preprocesador sabe que es / y si lo que quieres enviar es una barra al CMD de win usas \\.
As veces funciona unos as veces otro NPI XD
creo que con la de lin funciona asi que si tienes que incluir la carpeta #include "mlib/milebreria.h" funciona. Y si no prueba la otra forma. ;)
cuando agregas la carpeta en el propio codebloks puedes hacer el include así: <milibreria.h>
Eso es que el sabe donde esta y le decimos que la busque en sus carpetas.
Lo digo para poner esta carpeta en c: por que cuando dicha carpeta crezca pues si la tienes que cambiar a otro ordenador es fácil. Es solo copiar la carpeta pegarla a otro ordenador y declarar la ruta. Si ere algo espabilado hasta puedes hacer un programilla que te haga todo automático =D
Otro programa que me gusta poner en el disco c es el codeblocks. Asi no tengo que estar reinstalandolo.
Su carpeta de configuraciones realmente esta en %appdata% si entras ahi copias la carpeta codeblocks que esta en esta carpeta"Roaming" es solo ponerla en la misma ruta de otro ordenador y te funciona el codeblocks tal como estaba ;).
Es que cuesta un wuevo instalar todo el entorno y lo peor es configurar. Pfff
Son cosillas que ya los iras pillando. Si ya no lo sabes ya XD

Etiquetas: compilar, dev, funcion, int, programa
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:32.