elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Error al convertir un .cpp a .exe [Solucionado]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error al convertir un .cpp a .exe [Solucionado]  (Leído 3,059 veces)
Danyel_Casvill

Desconectado Desconectado

Mensajes: 113


adada


Ver Perfil
Error al convertir un .cpp a .exe [Solucionado]
« en: 20 Abril 2013, 19:27 pm »

Hola!

Nuevamente tengo problemas con el compilador, pero ahora es al abrir el ejecutable.

Cuando compilo un .cpp automáticamente se crea el archivo .exe en la misma carpeta donde está el .cpp (Sobra decirlo pues imagino que todos lo saben)

Linking console executable: C:\fc1298b345ad364c2c590c41f5\Nueva carpeta\Cuales!\Adada\Untitled3.exe

El .cpp si me corre, me compila y abre el programa sin problemas
pero cuando voy a abrir el .exe me sale un error: "El programa no puede iniciarse porque falta libstdc++-6.dll" en el equipo. Intente reinstalar el programa para corregir este problema."

Lo raro es que el archivo sí está, en esta ubicación C:\MinGW\bin, Intente descargar el archivo aparte por si el original estaba dañado pero sigue ocurriendo lo mismo. ._.

¿Alguno sabría ayudarme?

Gracias de antemano!  :D


Modificado

Ya encontré la solución!

El problema está a partir de la versión 4.5 de g++. Antes de esta versión, g++ enlazaba esta librería (libstdc++) estáticamente a los ejecutables compilados, por lo que ese error nunca aparecía. A partir de la versión 4.5, ya no se comporta de esta manera y enlaza la librería de forma dinámica, por lo que es necesaria esa DLL cuando no se está ejecutando el programa con el directorio de g++ como directorio de trabajo.
Para solucionarlo, pueden copiar la mencionada DLL a la carpeta del sistema de Windows, o incluir el directorio de g++ en la variable PATH del sistema.
Si quieren tener el comportamiento anterior de g++, es decir enlazar la librería estáticamente, compilen sus programas con la opción.


http://johny65corp.blogspot.com/2011/04/programas-compilados-con-g-ahora-piden.html



« Última modificación: 20 Abril 2013, 20:14 pm por Danyel_Casvill » En línea

adada
amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: Error al convertir un .cpp a .exe [Solucionado]
« Respuesta #1 en: 21 Abril 2013, 00:37 am »

Se puede enlazar estáticamente con lib stdc. Solo tienes que indicarlo explícitamente.

¿Como compilas? ¿Con un IDE o por línea de comandos?


En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines