2010-06-26 3 views
8

J'ai installé ubuntu 10. J'ai installé tous les paquets opencv que j'ai pu trouver dans le centre de logiciel. Je m'attends à ce qu'il installe des fichiers .lib quelque part que je puisse référencer dans mon projet, mais je ne les trouve pas. Où les met-il? Je veux utiliser eclipse comme la programmation ide en C++, mais j'ai du mal à trouver comment l'installer au départ. Je suis nouveau à la programmation en éclipse et ubuntu en général, donc si quelqu'un a un guide étape par étape, j'aimerais le voir.Où opencv installe-t-il ses bibliothèques dans ubuntu?

+0

Hmm .. la dernière fois que j'ai vérifié "10" n'était pas une version d'expédition d'Ubuntu ... –

+0

Si cela aide à clarifier la question, j'ai effectivement installé Ubuntu 10.04. –

+0

j'étais aussi bloqué au même problème sur Ubuntu 1104. j'avais gardé mon sol à http://ikharn.blogspot.com/2011_09_01_archive.html – Netro

Répondre

13

Vous pouvez trouver les drapeaux de liaison appropriés en utilisant pkg-config --libs opencv et le bon inclut en utilisant pkg-config --cflags opencv.

Les bibliothèques actuelles doivent être installées dans/usr/lib et avoir des noms tels que libhighgui.a ou libhighgui.so, mais vous n'aurez probablement pas à les référencer directement. Utilisez simplement la sortie des commandes ci-dessus à l'endroit approprié dans Eclipse pour définir les indicateurs de liaison et inclure les répertoires. Si vous voulez vraiment savoir quelles librairies sont liées à OpenCV, la sortie de pkg-config --libs opencv vous donnera les noms. Par exemple, l'une des sorties de cette commande est -lhighgui, donc nous savons qu'il devrait y avoir un fichier nommé libhighgui.so dans/usr/lib.

Je n'ai pas utilisé Eclipse depuis longtemps pour C ou C++, donc je ne me souviens pas où sont ces options, mais elles sont quelque part.

+0

ok, cela explique pourquoi je ne pouvais pas les trouver. Je m'attendais à trouver des fichiers .lib réels, c'est-à-dire un fichier comme opencv.lib. Les fichiers lib * .so dans Ubuntu sont-ils identiques aux fichiers .lib dans Windows? –

+0

@Mr Bell: Je ne suis pas 100% exactement ce qu'un fichier .lib est sur Windows, donc je ne peux pas vraiment répondre à cette question. Cependant, sous Linux, une lib * .so correspond à une bibliothèque partagée alors qu'une lib * .a correspond à une bibliothèque statique. J'espère que cela pourra aider. –

+0

Le paquet opencv n'a pas été trouvé dans le chemin de recherche pkg-config. Peut-être que vous devriez ajouter le répertoire contenant 'opencv.pc ' à la variable d'environnement PKG_CONFIG_PATH Aucun paquet' opencv 'trouvé – waspinator

1

dpkg -L opencv vous donnera une liste de tous les fichiers installés à partir du paquet opencv. Soyez averti, cependant, qu'il ne montrera pas les fichiers qui ne sont pas dans le paquet lui-même mais qui sont générés lorsque le paquet est installé. N'étant pas familier avec opencv, je ne sais pas si ce sera un problème pour vous.

4

Comme l'a déclaré Eric

pkg-config --libs opencv 

retournera libs à inclure et si elle est sur le comprennent des chemins de fichiers

il est /usr/include/opencv et si vous voulez qu'il soit ajouté automatiquement il suffit d'ajouter suivante commande avec la commande par Eric --cflags à la commande ci-dessus.

Par exemple. laissez le fichier à compiler être test.c alors la commande entière sera

g++ test.c `pkg-config --libs --cflags opencv` 

espérons que ça aide.

+1

Ceci est une réponse sensée. Pour ajouter à cela, je suggère d'utiliser 'g ++' au lieu de 'gcc'. Ceci sera automatiquement lié à stdC++, au cas où une erreur de liaison serait levée au moment de la compilation. –

+0

Salut, j'ai utilisé le tutoriel officiel d'opencv.org mais je ne peux pas terminer l'installation. J'ai fait ce qui est dit [ici] (http://docs.opencv.org/2.4/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation) mais quand j'essaye d'ajouter le chemin, je peux juste ' Je le trouve. Il n'y a rien dans le dossier d'inclusion de mon ubuntu 14.04.1 Pouvez-vous s'il vous plaît m'aider? – Rasool

2

Les bibliothèques OpenCV sont installées au format .a (bibliothèque statique) ou .so (bibliothèque dynamique).

Vous pouvez trouver les bibliothèques OpenCV2 (c'est-à-dire version C++) (par exemple libopencv_core.so, libopencv_highgui.so etc.) au /usr/local/lib. Si vous souhaitez uniquement des bibliothèques pour la version c (par exemple, libcv.a, libcxcore.a etc.), vous pouvez les trouver au /usr/lib.