2010-03-25 9 views
5

He descargado el origen de ImageMagick, he compilado el asistente para crear una solución de Visual Studio para enlaces estáticos e incluí la biblioteca estática del proyecto Magick ++ en mi proyecto de ejemplo (código siguiente). También agregué una dependencia en ese proyecto e incluí el archivo .lib en la solución, nada ayuda.La compilación estática de ImageMagick con otro proyecto da errores del enlazador

#include <Magick++.h> 

int main() 
{ 
    Magick::Image image; 
    bool test = image.isValid(); 
    return 0; 
} 

Esto da varios errores de enlace, tales como:

símbolo externo "__declspec (dllimport) pública: __thiscall virtual de Magia :: Imagen :: ~ Imagen (void)" sin resolver (__imp _ ?? 1Image @ Magick @@ UAE @ XZ) a la que se hace referencia en la función _main

¿Por qué no puede encontrar la implementación?

Estoy usando Visual Studio 2010 Beta 2.

+0

Tengo un problema muy similar. – Seth

Respuesta

2

El problema puede levantarse de que está utilizando el compilador diferente que la biblioteca fue compilado con. Como su compilador es bastante nuevo, es muy probable que utilice diferentes herramientas de creación de nombres y no pueda encontrar firmas de métodos dentro de la biblioteca.

0

Este error es extraño: el compilador busca una función de una DLL (__declspec (dllimport)). ¿Seguro que estás utilizando los archivos de encabezado correctos?

Cuestiones relacionadas