2010-04-14 8 views
1

Je suis un novice dans le travail sur VS IDE et n'ai pas beaucoup d'expérience dans la façon dont les différentes bibliothèques et fichiers sont liés. Je dois construire un projet OpenCV qui a été fait en VS2005 par un de mes collègues dans VS2008. Le projet est pour la détection de blobs.Visual Studio 2005 à VS 2008

Voici ce qu'il a à dire dans readme:

étapes pour utiliser la bibliothèque (en utilisant MSVC++ sp 5):

  1. ouvrir le projet de la bibliothèque et le construire
  2. en le projet dans lequel la bibliothèque doit être utilisée, ajouter:

    2.1 Dans "Project/Settings/C++/Preprocessor/Additional Inclure répertoires" ajouter le dire ctory où la bibliothèque de blob est stockée

    2.2 "Projet/Paramètres/Link/Entrée/chemin de bibliothèque supplémentaire" ajouter le répertoire dans lequel la bibliothèque de blob est stockée et dans "Object/Library modules" ajouter le cvblobslib.lib fichier

  3. Incluez le fichier "BlobResult.h" dans lequel vous souhaitez utiliser les variables blob.
  4. Pour voir un exemple sur l'utilisation de la bibliothèque blob, voir le fichier example.txt dans le fichier zip.

REMARQUE: Assurez-vous que dans le projet où le cvblobslib.lib est utilisé, les bibliothèques MFC Runtime ne sont pas mélangés:

  1. Arrivée « Projet-> Paramètres-> C/C++ -> Code de Génération-> Utilisez la bibliothèque d'exécution "de votre projet et réglez-le sur Debug Multithreaded DLL (version de débogage) ou Multithreaded DLL (version de publication).
  2. Vérifiez dans "Projet-> Paramètres-> Général" comment il utilise le MFC. Il devrait être "Utiliser MFC dans une DLL partagée".

NOTE1: La bibliothèque peut être compilé et utilisé dans .NET à l'aide des étapes, mais les options de menu peuvent varier un peu NOTE2: Dans la version .NET, les jeux de caractères doivent être égaux dans le .lib et dans le projet. [OpenCV yahoo groupe: Msg 35500]

Quelqu'un peut-il m'expliquer, comment faire dans le faire dans VS2008. J'apprécierais également si quelqu'un peut m'expliquer comment les différentes bibliothèques sont liées, qu'est-ce que Debug, What est Release et tout dans un dossier de projet de Visual Studio que nous avons. \

+0

merci KP ....... Comment puis-je faire une prime pour attirer plus d'attention à la question – Adi

+0

Votre question doit être ici au moins 2 jours avant de pouvoir ajouter une prime. Cependant, vous pouvez modifier votre question pour la renvoyer à la première page du site. Généralement, l'ajout de détails permet aux autres de savoir que vous travaillez toujours sur une solution au problème. Toute nouvelle information que vous pouvez ajouter sera utile. –

Répondre

0

J'ai été confondu par ceci au début aussi bien que c'est pas très bien expliqué par MSDN. Votre meilleur espoir d'apprendre est d'essayer de lier à une bibliothèque avec des instructions VS2008 (comme boost).

Quoi qu'il en soit, les répertoires include supplémentaires sont dans Project-> Properties-> C++ -> General et les bibliothèques supplémentaires se trouvent dans Project-> Properties-> Linker-> General. Vous pouvez placer des noms de bibliothèques dans des bibliothèques supplémentaires sous Propriétés-> Lieur-> Entrée. Donc, chaque fois que vous incluez un fichier, il apparaît dans vos répertoires Include et vos répertoires d'inclusion supplémentaires pour ce fichier. Chaque fois que vous spécifiez une bibliothèque supplémentaire (fichier .lib), elle recherche dans les répertoires de votre bibliothèque plus tous les répertoires de bibliothèque supplémentaires.Si vous utilisez beaucoup un répertoire include ou library, vous pouvez le rendre disponible pour chaque solution en allant dans Tools-> Options-> Projects and Solutions-> VC++ Directories et en mettant les répertoires que vous voulez dans Include Files and Library Fichiers respectivement.

En ce qui concerne Debug vs Release, sous Projet-> Propriétés il y a un menu déroulant en haut à gauche qui vous indique quelle configuration que vous modifiez actuellement les propriétés de. Pour changer celui que vous voulez actuellement construire, cliquez sur le « Configuration Manager » en haut à droite des propriétés du projet, puis utilisez la liste déroulante pour sélectionner des configurations pour chaque projet.

Release a généralement des optimisations activées etc, debug habituellement les bases de données de débogage (fichiers pdb), etc. Ils relient également à leurs bibliothèques respectives. En d'autres termes, vous devez habituellement les bibliothèques que vous liez à votre configuration, si une version de débogage doit créer un lien vers une bibliothèque de débogage et une version release doit créer un lien vers une bibliothèque de libération. Habituellement, les librairies qui sont debug ont un d suivant leur nom, et si elles sont multi-threades ont un mt dans leur nom.

Le C++ -> Code des conseils génération, ils vous donnent est toujours la même et est une source commune ou des problèmes. Cela signifie que la bibliothèque que vous liez contient des liens vers une bibliothèque C différente de celle que vous utilisez, ce qui peut causer des problèmes.

Il peut être déroutant, généralement votre meilleure solution si vous êtes confus est de demander à la liste de diffusion de tout projet que vous essayez de lier. Si vous obtenez des erreurs spécifiques que vous ne pouvez pas comprendre, essayer de jouer avec la configuration et si vous ne savez toujours pas, demandez à un endroit comme ici avec votre problème.

+0

Merci beaucoup FranticPedantic pour la réponse détaillée. J'apprécie cela et je vais essayer de faire ce que vous avez dit ... et laissez-vous savoir à ce sujet. – Adi

Questions connexes