2009-06-17 8 views
1

Je travaille sur un projet C++ lié à une bibliothèque statique. Cependant, je veux utiliser le TBB d'Intel, qui n'est disponible que sous forme de bibliothèque dynamique. J'ai essayé de mettre ça en studio visuel mais je n'arrive pas à le faire fonctionner. Est-ce que quelqu'un a des instructions détaillées pour le faire si c'est possible?Liaison avec des bibliothèques statiques et dynamiques dans MSVC

Répondre

3

Généralement, lorsqu'une bibliothèque est mise à disposition en tant que bibliothèque dynamique (.dll), elle est également livrée avec un fichier .lib à lier (comme indiqué dans cette section question). Cela peut être ajouté à la liste des projets d'entrées de la même façon qu'une bibliothèque statique est

Projet Propriétés-> Configuration Propriétés-> Linker-> Input-> Dépendances supplémentaires (en VS2008)

Si un fichier .lib n'est pas disponible, vous devrez charger le fichier .dll lors de l'exécution à l'aide de la fonction API Win32 LoadLibraryEx, puis des appels suivants au GetProcAddress pour obtenir les adresses des fonctions dont vous avez besoin.

1

Parlez-vous de lier à une bibliothèque RUNTIME? Non, vous ne pouvez que lier à un. Vous devez soit modifier votre projet, soit recompiler le TBB pour le lier à l'exécution statique.

Questions connexes