2011-04-30 2 views
0

Je travaille avec python, mais j'ai une compréhension de base de l'empaquetage avec C. Cependant, je ne sais pas comment construire le chemin c '. En outre, mes recherches google semblent être en train de me renvoyer des résultats sur C++. Ou est-ce ma solution?Ajout d'une bibliothèque à C

L'objectif est d'inclure qrencode.h, je peux facilement le mettre dans le même dossier mais j'aimerais savoir comment le lier à la place.

Merci!

PS. Comme toujours, l'ajout de matériel pertinent serait très apprécié!

+1

Les fichiers .h ne sont pas des bibliothèques. –

Répondre

1

Vous utilisez une directive include pour inclure le fichier *.h dans votre C/C++ Code:

#include "qrencode.h" 

Comme @Ignacio dit Vazquez-Abrams, cependant, qui est juste un en-tête, qui déclare fonctions; vous avez besoin des fonctions actuelles, et elles seront dans un fichier *.dylib ou *.so, qui doit être lié à un exécutable. La compilation transforme un fichier *.c en un fichier *.o; La liaison consiste à regrouper tous les fichiers et bibliothèques *.o dans une application. L'option -L sur la ligne de commande de l'éditeur de liens indique où rechercher les bibliothèques; l'option -l lui indique d'inclure une bibliothèque.

+0

Dans ubuntu, je peux installer des paquets constitués de ...-dev dans le nom. Après pactching ladite bibliothèque, dans ce cas libqrencode-dev. Je peux ensuite créer la liaison python. Comment installer l'équivalent libqrencode-dev sur os max? J'ai vérifié le port pour qrencode et libqrencode – jbcurtin

+0

* -dev sont les en-têtes, non? Ou est-ce que je me trompe? – jbcurtin

+0

* Les paquets -dev sont les en-têtes et les bibliothèques, oui. Personnellement, je voudrais juste télécharger la source de [ici] (http://fukuchi.org/works/qrencode/index.en.html) et s'attendre à ce qu'il compile assez facilement. –

Questions connexes