J'ai un problème assez intrigant avec mon programme (compilé avec gcc 4.6.4 sur Ubuntu 12.04). Lorsque je crée dynamiquement l'exécutable, le programme fonctionne parfaitement. Mais quand je le construis statiquement (avec le drapeau -static), il me donne un 'core dumped' après la sortie (par exemple après 'return 0' dans main). Malheureusement, l'ensemble du programme est trop grand pour poser ici. Quelles sont les possibilités?Core jeté après la sortie du programme
Répondre
1) Vous avez encore un thread en cours d'exécution. 2) Vous écrasez la mémoire et vous avez de la chance avec les bibliothèques dynamiques.
En plus des deux possibilités en johnnycrash answer:
Certaines fonctions avec
__attribute__ ((destructor))
est appelée et core dump.Le segment de mémoire est corrompu (vérifiez avec valgrind)
Certaines fonctions enregistrées avec atexit(3) se bloque
Certaines bibliothèque/fonction est liée "deux fois"
Merci pour votre suggestion. D'une certaine manière, le remplacement de 'return 0' par '_exit (0)' résout le problème. – kengo
Cela contourne le problème sans le résoudre. –
- 1. Eclipse CDT sortie inattendue après la compilation du programme C
- 2. Programme sortant sans fichier core après socket :: send
- 3. sortie du programme to_erl
- 4. jeté à la liste après désérialisation (génériques)
- 5. Sortie du programme Java
- 6. Sortie du programme Java
- 7. Désactiver la sortie d'OpenCV-core "Init done"
- 8. sortie du programme avec l'état de sortie 0 juste après qu'elle a commencé
- 9. Getting core :: Programme abandonné avec core
- 10. Problème avec la sortie du programme
- 11. Lire la sortie du programme C++
- 12. Expliquer la sortie du programme C++ suivant
- 13. Erreur dans la sortie du programme CUDA
- 14. Sortie du programme C suivant
- 15. Lecture par programme de la sortie du programme Hadoop Mapreduce
- 16. Sortie du programme C/CUDA
- 17. Segmentation Fault (core dumped) Après la lecture du fichier
- 18. reste de la chaîne après une citation simple est jeté
- 19. Comment obtenir core dump à partir du programme arrêté (linux)
- 20. scons - exécution du programme après la compilation
- 21. Redémarrer l'application après la fermeture du programme
- 22. Sorties Fstream après la sortie
- 23. C# méthode de rappel conduit à la sortie du programme
- 24. Interprétation de la sortie de CAShow dans Core Audio
- 25. Les objets CRITICAL_SECTION sont-ils récupérés après la sortie du programme?
- 26. Erreurs de mémoire C++ à la sortie du programme
- 27. Mauvaise sortie après la compilation
- 28. code de sortie du programme -SomeNumber
- 29. Afficher la sortie après l'entrée
- 30. sortie du programme CUDA est vide
Vous utilisez bibliothèques dynamiques plutôt que des bibliothèques statiques pour la version statique du lien. – user3629249