Maison  >  Questions et réponses  >  le corps du texte

c++ - Une erreur de segmentation se produit avant l'exécution de la fonction principale et gdb ne peut pas déboguer. Elle est probablement liée aux paramètres de compilation g++.

Essayez d'utiliser C++ pour empaqueter openssl, écrivez d'abord une bibliothèque statique libtest.a. Dépend de -lssl -lcrytpo -lpthread.
Structure des répertoires :

Il existe deux fichiers de test : client.cpp, server.cpp
La commande utilisée pour compiler le programme exécutable est la suivante :
g++ -g -o2 -fpic client.cpp -I../include -L ../lib -ltest -shared -u -lssl -lcrypto -lpthread -o client
Compilation réussie ;
Erreur d'exécution, le débogage gdb a constaté qu'il s'est écrasé avant le démarrage de la fonction principale.
Supplément : commentez tous les codes de fonction principaux, et la compilation ci-dessus ne fonctionnera pas. Supprimez le paramètre -shared lors de la compilation et le programme se terminera normalement.

仅有的幸福仅有的幸福2685 Il y a quelques jours538

répondre à tous(1)je répondrai

  • 天蓬老师

    天蓬老师2017-05-16 13:25:33

    Il y a un problème avec le code que j'ai écrit pour compiler la bibliothèque statique.

    répondre
    0
  • Annulerrépondre