J'utilise code :: blocks pour compiler ma bibliothèque statique. Le résultat en sortie est un fichier libstatic.a. Maintenant, comment puis-je créer un lien vers ma bibliothèque pour utiliser les fonctions compilées?
(J'ai essayé d'utiliser #include "libstatic.a" mais mon projet ne compile pas)
cc -o yourprog yourprog.c -lstatic
ou
cc -o yourprog yourprog.c libstatic.a
#include "libstatic.h"
, c’est-à-dire utiliser le fichier d’en-tête approprié dans votre code (c’est pourquoi votre code ne compile pas) et inclure le chemin de votre libstatic.a
dans les options de l’éditeur de liens comme l’une de vos bibliothèques d’entrée.
Cette page Web contient quelques exemples de liens vers une bibliothèque statique, par exemple.
gcc -I. -o jvct jvct.c libjvc.a
Je devais définir le chemin de la bibliothèque dans mon fichier makefile. Pour ce cas, vous pouvez utiliser:
gcc -o myapp main.c -L. -lstatic
gcc -I. -o jvct jvct.c libjvc.a
Pour lier de manière purement statique, utilisez -static
cc -static yourprogram.c libstatic.a