Problème de compilation en C
Résolu
Marpioux
Messages postés
5
Statut
Membre
-
Nyouz Messages postés 13 Statut Membre -
Nyouz Messages postés 13 Statut Membre -
Bonjour j'ai un problème, pour un projet universitaire je dois créer un démineur avec la librairie libsx (sous Ubuntu).
J'ai bien téléchargé la bibliothèque Libsx mais quand j'écris le programme de test de la bibliothèque ces erreurs s'affichent à la compilation.
Quelqu'un saurait comment résoudre ça?
J'ai bien téléchargé la bibliothèque Libsx mais quand j'écris le programme de test de la bibliothèque ces erreurs s'affichent à la compilation.
Quelqu'un saurait comment résoudre ça?

A voir également:
- Problème de compilation en C
- Breach compilation c'est quoi - Guide
- Compiler plusieurs pdf en un seul - Guide
- Problème Compilation Dev-C++ - Forum C++
- Problème de compilation et d'execution en C - Forum C
- Comment faire une compilation de musique - Forum Audio
3 réponses
Salut Marpioux,
Avec Ubuntu, comme sur toute autre distribution Linux disposant d'un système de paquets, tu installes cette bibliothèque par les paquets de ta distribution et non pas en téléchargeant un truc d'un site. Ubuntu ira chercher les éléments de la bibliothèque dans les dépôts officiels Ubuntu et les installera là où ton compilateur et linker pourra les trouver, en gérant les dépendances du paquet.
N'installe rien autrement sous Linux qu'en passant par les dépôts officiels de ta distribution, sauf si tu sais très exactement pourquoi tu déroges à cette règle et que tu sais ce que tu fais.
Donc :
Ensuite, pour compiler, tu devras passer à gcc les paramètres de liaison vers cette bibliothèque, avec l'option
Donc, en reprenant ta ligne de commande de compilation :
l'option
https://packages.ubuntu.com/fr/bionic/amd64/libsx-dev/filelist
et que l'option passée au linker par gcc se construit en retirant le préfixe "lib" et l'extension ".a".
(non testé, je n'utilise pas cette bibliothèque)
Dal
Avec Ubuntu, comme sur toute autre distribution Linux disposant d'un système de paquets, tu installes cette bibliothèque par les paquets de ta distribution et non pas en téléchargeant un truc d'un site. Ubuntu ira chercher les éléments de la bibliothèque dans les dépôts officiels Ubuntu et les installera là où ton compilateur et linker pourra les trouver, en gérant les dépendances du paquet.
N'installe rien autrement sous Linux qu'en passant par les dépôts officiels de ta distribution, sauf si tu sais très exactement pourquoi tu déroges à cette règle et que tu sais ce que tu fais.
Donc :
sudo apt-get install libsx-dev
Ensuite, pour compiler, tu devras passer à gcc les paramètres de liaison vers cette bibliothèque, avec l'option
-là la fin de la ligne de commande.
Donc, en reprenant ta ligne de commande de compilation :
gcc main.c -o test -lsx
l'option
-lsxse déduirait du fait que le paquet comprend le binaire compilé
libsx.apour cette bibliothèque comme on peut le voir dans la liste des fichiers contenus :
https://packages.ubuntu.com/fr/bionic/amd64/libsx-dev/filelist
et que l'option passée au linker par gcc se construit en retirant le préfixe "lib" et l'extension ".a".
(non testé, je n'utilise pas cette bibliothèque)
Dal