c++ no - ¿Cómo incluir bibliotecas en Visual Studio 2012?




puedo agregar (3)

También en el nivel de código, puede agregar su lib al proyecto usando las directivas del compilador #pragma .

ejemplo:

#pragma comment( lib, "yourLibrary.lib" )

Comencé aprendiendo C ++ hace unos días y me gustaría obtener algunos datos para hacerlo más divertido. Encontré una potente biblioteca de C ++ llamada Unirest que me puede ayudar a obtener datos de muchas API y después de practicar los conceptos básicos :)

No sé cómo incluir bibliotecas en mi proyecto. Me gustan algunos videos sobre cómo hacerlo así que acabo de crear una carpeta libs (como siempre lo hago cuando estoy programando en PHP) y copié los archivos de la biblioteca. Después UNIRest.h archivo de cabecera UNIRest.h en mi fuente y agregué el directorio libs en la opción VS + Directories en Project Properties - Configuration Properties - VC + Directories . Todo sigue estando bien. Pero cuando abrí el archivo de cabecera UNIRest.h , apareció el problema:

#import "UNIHTTPRequest.h"
#import "UNIHTTPRequestWithBody.h"
#import "HttpRequest/UNISimpleRequest.h"
#import "HttpRequest/UNIBodyRequest.h"
#import "HttpResponse/UNIHTTPBinaryResponse.h"
#import "HttpResponse/UNIHTTPJsonResponse.h"
#import "HttpResponse/UNIHTTPStringResponse.h"

Todas esas macros están subrayadas y la compilación falló con el mensaje:

fatal error C1083: Cannot open type library file: 'libs\unirest\unihttprequest.h': Error loading type library/DLL.

¿Me podría ayudar? Espero que no sea solo una pregunta estúpida porque traté de hacer que funcione toda la tarde :(


Por lo general, debe hacer 5 cosas para incluir una biblioteca en su proyecto:

1) Agregue #include declaraciones de archivos necesarios con declaraciones / interfaces, por ejemplo:

#include "library.h"

2) Agregue un directorio de inclusión para que el compilador analice

-> Propiedades de configuración / Directorios de VC ++ / Incluir directorios (haga clic y edite, agregue una nueva entrada)

3) Agregue un directorio de biblioteca para los archivos * .lib:

-> proyecto (en la barra superior) / propiedades / Propiedades de configuración / Directorios de VC ++ / Directorios de biblioteca (haga clic y edite, agregue una nueva entrada)

4) Enlace los archivos lib * .lib

-> Propiedades de configuración / Enlazador / Entrada / Dependencias adicionales (por ejemplo: library.lib;

5) Coloque los archivos * .dll ya sea:

-> en el directorio estará abriendo su ejecutable final desde o hacia Windows / system32


¿Su proyecto DLL tiene exportaciones reales? Si no hay exportaciones, el vinculador no generará un archivo .lib de biblioteca de importación.

En la versión no Express de VS, el nombre de la biblioteca importada se especifica en la configuración del proyecto aquí:

Configuration Properties/Linker/Advanced/Import Library

Supongo que es lo mismo en Express (si incluso ofrece la posibilidad de configurar el nombre).





c++ visual-studio-2012