Visual C++ .NET - error LNK 2001

 
Vista:

error LNK 2001

Publicado por Sabrina (1 intervención) el 05/03/2009 12:59:12
Hola estoy trabajando con el visual estudio y con ogre y al compilar este codigo:

#include "ExampleApplication.h"

class TutorialApplication : public ExampleApplication
{
protected:
public:
TutorialApplication()
{
}

~TutorialApplication()
{
}
protected:
void createScene(void)
{
}
};

#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
#define WIN32_LEAN_AND_MEAN
#include "windows.h"

INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT )
#else
int main(int argc, char **argv)
#endif
{
// Create application object
TutorialApplication app;

try {
app.go();
} catch( Exception& e ) {
#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
MessageBox( NULL, e.what(), "An exception has occurred!", MB_OK | MB_ICONERROR | MB_TASKMODAL);
#else
fprintf(stderr, "An exception has occurred: %s ",
e.what());
#endif
}

return 0;
}

Me da este tipo de errores:

1>main.obj : error LNK2001: símbolo externo "__declspec(dllimport) const Ogre::WindowEventListener::`vftable'" (__imp_??_7WindowEventListener@Ogre@@6B@) sin resolver
1>main.obj : error LNK2001: símbolo externo "__declspec(dllimport) public: static void __cdecl Ogre::AllocatedObject<class Ogre::CategorisedAllocPolicy<0> >::operator delete(void *)" (__imp_??3?$AllocatedObject@V?$CategorisedAllocPolicy@$0A@@Ogre@@@Ogre@@SAXPAX@Z) sin resolver
1>main.obj : error LNK2001: símbolo externo "__declspec(dllimport) public: static void * __cdecl Ogre::AllocatedObject<class Ogre::CategorisedAllocPolicy<0> >::operator new(unsigned int)" (__imp_??2?$AllocatedObject@V?$CategorisedAllocPolicy@$0A@@Ogre@@@Ogre@@SAPAXI@Z) sin resolver
1>main.obj : error LNK2001: símbolo externo "__declspec(dllimport) public: __thiscall Ogre::WindowEventListener::WindowEventListener(void)" (__imp_??0WindowEventListener@Ogre@@QAE@XZ) sin resolver
1>main.obj : error LNK2001: símbolo externo "__declspec(dllimport) public: __thiscall Ogre::FrameListener::FrameListener(void)" (__imp_??0FrameListener@Ogre@@QAE@XZ) sin resolver
1>main.obj : error LNK2001: símbolo externo "__declspec(dllimport) public: struct OIS::MouseState const & __thiscall OIS::Mouse::getMouseState(void)const " (__imp_?getMouseState@Mouse@OIS@@QBEABUMouseState@2@XZ) sin resolver
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Errores de enlace al compilar proyecto Ogre con Visual Studio

Publicado por Alejandro (265 intervenciones) el 06/02/2024 23:05:16
Sabrina, los errores que estás viendo están relacionados con símbolos sin resolver y parecen indicar que el enlazador (`linker`) no está encontrando las implementaciones de ciertos símbolos de las bibliotecas de Ogre y OIS (Object-Oriented Input System).

Aquí hay algunas cosas que podrías verificar y considerar para solucionar este problema:

1. Bibliotecas enlazadas:
Asegúrate de que estás enlazando las bibliotecas correctas de Ogre y OIS en tu proyecto. Deberías agregar las bibliotecas necesarias al enlazador. Puedes hacer esto yendo a las propiedades del proyecto en Visual Studio y asegurándote de que las rutas a las bibliotecas de Ogre y OIS estén especificadas en las opciones del enlazador.

2. Configuración de proyecto:
Verifica que la configuración del proyecto esté correctamente establecida para tu plataforma y configuración de compilación (por ejemplo, Debug o Release). Asegúrate de que las configuraciones coincidan con las bibliotecas que estás utilizando.

3. Definiciones de símbolos:
Asegúrate de que las definiciones de símbolos necesarias estén configuradas correctamente. Esto podría incluir definiciones relacionadas con la plataforma (`OGRE_WIN32`, por ejemplo).

4. Orden de enlace:
El orden en que se enlazan las bibliotecas puede ser importante. A veces, cambiar el orden de enlace de las bibliotecas puede resolver problemas de símbolos no resueltos. Intenta cambiar el orden de enlace de las bibliotecas en la configuración del proyecto.

5. Versiones de bibliotecas:
Verifica que estás utilizando las versiones correctas de las bibliotecas de Ogre y OIS. Asegúrate de que las versiones de las bibliotecas coincidan con las versiones de los encabezados y las definiciones de símbolos que estás utilizando.

6. Bibliotecas de depuración/Release:
Asegúrate de que las bibliotecas que estás enlazando coincidan con la configuración de compilación actual (Debug o Release). Por ejemplo, si estás compilando en modo Debug, asegúrate de enlazar con las bibliotecas de depuración de Ogre y OIS.

Revisando estas consideraciones y ajustando la configuración del proyecto según sea necesario, deberías poder resolver los errores de símbolos no resueltos en tu proyecto Ogre con Visual Studio.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar