Compiling the source

If you are a new Irrlicht Engine user, and have a newbie-question, this is the forum for you. You may also post general programming questions here.
Post Reply
Guest

Compiling the source

Post by Guest »

Man am I tired. I'm having a go at writing a couple of new mesh loaders, .X and .LWO, and maybe have a go at the Openflight Scene graph, and all of a sudden I can't link the source..

Code: Select all

GUIEnvironment.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::gui::CGUIInOutFader::CGUIInOutFader(class irr::gui::IGUIEnvironment *,class irr::gui::IGUIElement *,int,class irr::core::rect<int>)" (??0CGUIInOutFader@gui@irr@
@QAE@PAVIGUIEnvironment@12@PAVIGUIElement@12@HV?$rect@H@core@2@@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CMeshManipulator::CMeshManipulator(void)" (??0CMeshManipulator@scene@irr@@QAE@XZ)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CWaterSurfaceSceneNode::CWaterSurfaceSceneNode(float,float,float,class irr::scene::IMesh *,class irr::scene::ISceneNode *,class irr::scene::ISceneManager *
,int,class irr::core::vector3d<float> const &,class irr::core::vector3d<float> const &,class irr::core::vector3d<float> const &)" (??0CWaterSurfaceSceneNode@scene@irr@@QAE@MMMPAVIMesh@12@PAVISceneNode@12@PAVISceneManager@12@HABV?$vector3d@M@core@2@3
3@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CParticleSystemSceneNode::CParticleSystemSceneNode(bool,class irr::scene::ISceneNode *,class irr::scene::ISceneManager *,int,class irr::core::vector3d<floa
t> const &,class irr::core::vector3d<float> const &,class irr::core::vector3d<float> const &)" (??0CParticleSystemSceneNode@scene@irr@@QAE@_NPAVISceneNode@12@PAVISceneManager@12@HABV?$vector3d@M@core@2@33@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CDummyTransformationSceneNode::CDummyTransformationSceneNode(class irr::scene::ISceneNode *,class irr::scene::ISceneManager *,int)" (??0CDummyTransformatio
nSceneNode@scene@irr@@QAE@PAVISceneNode@12@PAVISceneManager@12@H@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CSceneNodeAnimatorDelete::CSceneNodeAnimatorDelete(class irr::scene::ISceneManager *,unsigned int)" (??0CSceneNodeAnimatorDelete@scene@irr@@QAE@PAVISceneMa
nager@12@I@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CSceneNodeAnimatorCollisionResponse::CSceneNodeAnimatorCollisionResponse(class irr::scene::ISceneManager *,class irr::scene::ITriangleSelector *,class irr:
:scene::ISceneNode *,class irr::core::vector3d<float> const &,class irr::core::vector3d<float> const &,float,class irr::core::vector3d<float> const &,float)" (??0CSceneNodeAnimatorCollisionResponse@scene@irr@@QAE@PAVISceneManager@12@PAVITriangleSele
ctor@12@PAVISceneNode@12@ABV?$vector3d@M@core@2@3M3M@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CTriangleSelector::CTriangleSelector(class irr::scene::IMesh *,class irr::scene::ISceneNode *)" (??0CTriangleSelector@scene@irr@@QAE@PAVIMesh@12@PAVISceneN
ode@12@@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CTriangleBBSelector::CTriangleBBSelector(class irr::scene::ISceneNode *)" (??0CTriangleBBSelector@scene@irr@@QAE@PAVISceneNode@12@@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::COctTreeTriangleSelector::COctTreeTriangleSelector(class irr::scene::IMesh *,class irr::scene::ISceneNode *,int)" (??0COctTreeTriangleSelector@scene@irr@@Q
AE@PAVIMesh@12@PAVISceneNode@12@H@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CMetaTriangleSelector::CMetaTriangleSelector(void)" (??0CMetaTriangleSelector@scene@irr@@QAE@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual unsigned short const * __thiscall irr::CIrrDeviceStub::getVersion(void)" (?getVersion@CIrrDeviceStub@irr@@UAEPBGXZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::ITimer * __thiscall irr::CIrrDeviceStub::getTimer(void)" (?getTimer@CIrrDeviceStub@irr@@UAEPAVITimer@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::gui::ICursorControl * __thiscall irr::CIrrDeviceStub::getCursorControl(void)" (?getCursorControl@CIrrDeviceStub@irr@@UAEPAVICursorControl@gui@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::scene::ISceneManager * __thiscall irr::CIrrDeviceStub::getSceneManager(void)" (?getSceneManager@CIrrDeviceStub@irr@@UAEPAVISceneManager@scene@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::gui::IGUIEnvironment * __thiscall irr::CIrrDeviceStub::getGUIEnvironment(void)" (?getGUIEnvironment@CIrrDeviceStub@irr@@UAEPAVIGUIEnvironment@gui@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::io::IFileSystem * __thiscall irr::CIrrDeviceStub::getFileSystem(void)" (?getFileSystem@CIrrDeviceStub@irr@@UAEPAVIFileSystem@io@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::video::IVideoDriver * __thiscall irr::CIrrDeviceStub::getVideoDriver(void)" (?getVideoDriver@CIrrDeviceStub@irr@@UAEPAVIVideoDriver@video@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall irr::CIrrDeviceStub::~CIrrDeviceStub(void)" (??1CIrrDeviceStub@irr@@UAE@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "protected: void __thiscall irr::CIrrDeviceStub::createGUIAndScene(class irr::IEventReceiver *)" (?createGUIAndScene@CIrrDeviceStub@irr@@IAEXPAVIEventReceiver@2@@Z)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::CIrrDeviceStub::CIrrDeviceStub(void)" (??0CIrrDeviceStub@irr@@QAE@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: void __thiscall irr::video::CVideoModeList::setDesktop(int,class irr::core::dimension2d<int> const &)" (?setDesktop@CVideoModeList@video@irr@@QAEXHABV?$dimension2d@H@core@3@@Z)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: void __thiscall irr::video::CVideoModeList::addMode(class irr::core::dimension2d<int> const &,int)" (?addMode@CVideoModeList@video@irr@@QAEXABV?$dimension2d@H@core@3@H@Z)
..\Debug/Irrlicht.dll : fatal error LNK1120: 23 unresolved externals
I know it has to be something simple. but what?? Maybe another coffee will fix what ails me.....
WhytWulf
Posts: 51
Joined: Mon Sep 08, 2003 11:14 am
Location: Australia, Tamworth, NSW
Contact:

Post by WhytWulf »

I am also having a similar issue compiling..
err hang a tick.. Doh that is my previous post.. :)

See how tired I am :)
[dx/x]=HUNT3R
Posts: 271
Joined: Sat Aug 23, 2003 5:52 pm
Location: Hurricane Central, Florida

Post by [dx/x]=HUNT3R »

You must be tired, you were working on that at 6 this morning (my time) and your still working on it a 9:30 at night. But I would expect that since thats a linker error that you just need to check and be sure that you're setup to link to the .lib files and .h files correctly.
WhytWulf
Posts: 51
Joined: Mon Sep 08, 2003 11:14 am
Location: Australia, Tamworth, NSW
Contact:

Post by WhytWulf »

I wish it was that simple.. The examples I can compile with no problems, but trying to compile the engine from the source is causing the headache (it could be lack of sleep too :) )

What Libs should I be linking in with the source.. I'm using vc6, and using the supplied project.
Max Man

while compileing on windows

Post by Max Man »

i get these error pls resolve this problem

Linking...
Creating library ..\Debug/Irrlicht.lib and object ..\Debug/Irrlicht.exp
CGUIEnvironment.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::gui::CGUIInOutFader::CGUIInOutFader(class irr::gui::IGUIEnvironment *,class irr::gui::IGUIElement *,int,class irr::core::rect<int>)" (??0CGUIInOutFader@gui@irr@
@QAE@PAVIGUIEnvironment@12@PAVIGUIElement@12@HV?$rect@H@core@2@@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CMeshManipulator::CMeshManipulator(void)" (??0CMeshManipulator@scene@irr@@QAE@XZ)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CWaterSurfaceSceneNode::CWaterSurfaceSceneNode(float,float,float,class irr::scene::IMesh *,class irr::scene::ISceneNode *,class irr::scene::ISceneManager *
,int,class irr::core::vector3d<float> const &,class irr::core::vector3d<float> const &,class irr::core::vector3d<float> const &)" (??0CWaterSurfaceSceneNode@scene@irr@@QAE@MMMPAVIMesh@12@PAVISceneNode@12@PAVISceneManager@12@HABV?$vector3d@M@core@2@3
3@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CParticleSystemSceneNode::CParticleSystemSceneNode(bool,class irr::scene::ISceneNode *,class irr::scene::ISceneManager *,int,class irr::core::vector3d<floa
t> const &,class irr::core::vector3d<float> const &,class irr::core::vector3d<float> const &)" (??0CParticleSystemSceneNode@scene@irr@@QAE@_NPAVISceneNode@12@PAVISceneManager@12@HABV?$vector3d@M@core@2@33@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CDummyTransformationSceneNode::CDummyTransformationSceneNode(class irr::scene::ISceneNode *,class irr::scene::ISceneManager *,int)" (??0CDummyTransformatio
nSceneNode@scene@irr@@QAE@PAVISceneNode@12@PAVISceneManager@12@H@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CSceneNodeAnimatorDelete::CSceneNodeAnimatorDelete(class irr::scene::ISceneManager *,unsigned int)" (??0CSceneNodeAnimatorDelete@scene@irr@@QAE@PAVISceneMa
nager@12@I@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CSceneNodeAnimatorCollisionResponse::CSceneNodeAnimatorCollisionResponse(class irr::scene::ISceneManager *,class irr::scene::ITriangleSelector *,class irr:
:scene::ISceneNode *,class irr::core::vector3d<float> const &,class irr::core::vector3d<float> const &,float,class irr::core::vector3d<float> const &,float)" (??0CSceneNodeAnimatorCollisionResponse@scene@irr@@QAE@PAVISceneManager@12@PAVITriangleSele
ctor@12@PAVISceneNode@12@ABV?$vector3d@M@core@2@3M3M@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CTriangleSelector::CTriangleSelector(class irr::scene::IMesh *,class irr::scene::ISceneNode *)" (??0CTriangleSelector@scene@irr@@QAE@PAVIMesh@12@PAVISceneN
ode@12@@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CTriangleBBSelector::CTriangleBBSelector(class irr::scene::ISceneNode *)" (??0CTriangleBBSelector@scene@irr@@QAE@PAVISceneNode@12@@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::COctTreeTriangleSelector::COctTreeTriangleSelector(class irr::scene::IMesh *,class irr::scene::ISceneNode *,int)" (??0COctTreeTriangleSelector@scene@irr@@Q
AE@PAVIMesh@12@PAVISceneNode@12@H@Z)
CSceneManager.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::scene::CMetaTriangleSelector::CMetaTriangleSelector(void)" (??0CMetaTriangleSelector@scene@irr@@QAE@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual unsigned short const * __thiscall irr::CIrrDeviceStub::getVersion(void)" (?getVersion@CIrrDeviceStub@irr@@UAEPBGXZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::ITimer * __thiscall irr::CIrrDeviceStub::getTimer(void)" (?getTimer@CIrrDeviceStub@irr@@UAEPAVITimer@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::gui::ICursorControl * __thiscall irr::CIrrDeviceStub::getCursorControl(void)" (?getCursorControl@CIrrDeviceStub@irr@@UAEPAVICursorControl@gui@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::scene::ISceneManager * __thiscall irr::CIrrDeviceStub::getSceneManager(void)" (?getSceneManager@CIrrDeviceStub@irr@@UAEPAVISceneManager@scene@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::gui::IGUIEnvironment * __thiscall irr::CIrrDeviceStub::getGUIEnvironment(void)" (?getGUIEnvironment@CIrrDeviceStub@irr@@UAEPAVIGUIEnvironment@gui@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::io::IFileSystem * __thiscall irr::CIrrDeviceStub::getFileSystem(void)" (?getFileSystem@CIrrDeviceStub@irr@@UAEPAVIFileSystem@io@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual class irr::video::IVideoDriver * __thiscall irr::CIrrDeviceStub::getVideoDriver(void)" (?getVideoDriver@CIrrDeviceStub@irr@@UAEPAVIVideoDriver@video@2@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall irr::CIrrDeviceStub::~CIrrDeviceStub(void)" (??1CIrrDeviceStub@irr@@UAE@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "protected: void __thiscall irr::CIrrDeviceStub::createGUIAndScene(class irr::IEventReceiver *)" (?createGUIAndScene@CIrrDeviceStub@irr@@IAEXPAVIEventReceiver@2@@Z)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: __thiscall irr::CIrrDeviceStub::CIrrDeviceStub(void)" (??0CIrrDeviceStub@irr@@QAE@XZ)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: void __thiscall irr::video::CVideoModeList::setDesktop(int,class irr::core::dimension2d<int> const &)" (?setDesktop@CVideoModeList@video@irr@@QAEXHABV?$dimension2d@H@core@3@@Z)
CIrrDeviceWin32.obj : error LNK2001: unresolved external symbol "public: void __thiscall irr::video::CVideoModeList::addMode(class irr::core::dimension2d<int> const &,int)" (?addMode@CVideoModeList@video@irr@@QAEXABV?$dimension2d@H@core@3@H@Z)
..\Debug/Irrlicht.dll : fatal error LNK1120: 23 unresolved externals
Error executing link.exe.

Irrlicht.dll - 24 error(s), 0 warning(s)

regards
Max Man
niko
Site Admin
Posts: 1759
Joined: Fri Aug 22, 2003 4:44 am
Location: Vienna, Austria
Contact:

Post by niko »

I think the problem is that there are some .cpp file missing in your project. Simply add all .cpp files to your project, Visual studio will not add file which are already in your project and compile again.
cyberbobjr
Posts: 64
Joined: Mon Sep 08, 2003 8:21 am
Location: Paris, France

Post by cyberbobjr »

Yes !
This is the solution, manually "Add files to folder..." under "scene" folder and "gui impl" folder, etc.
After you add cpp/h files missings...

But, i have an error with compilation :
void CMeshManipulator::setVertexColorAlpha(scene::IMesh* mesh, s32 alpha) const

e:\irrlicht-0.4\source\source\cmeshmanipulator.cpp(75) : error C2360: initialization of 'i' is skipped by 'case' label
e:\irrlicht-0.4\source\source\cmeshmanipulator.cpp(72) : see declaration of 'i'
e:\irrlicht-0.4\source\source\cmeshmanipulator.cpp(76) : error C2374: 'i' : redefinition; multiple initialization
e:\irrlicht-0.4\source\source\cmeshmanipulator.cpp(72) : see declaration of 'i'
e:\irrlicht-0.4\source\source\cmeshmanipulator.cpp(157) : error C2360: initialization of 'i' is skipped by 'case' label
e:\irrlicht-0.4\source\source\cmeshmanipulator.cpp(154) : see declaration of 'i'
e:\irrlicht-0.4\source\source\cmeshmanipulator.cpp(158) : error C2374: 'i' : redefinition; multiple initialization
e:\irrlicht-0.4\source\source\cmeshmanipulator.cpp(154) : see declaration of 'i'

Maybe a tricky options of VisualC++ 6 ?
Thanks for your help...
hearsedriver
Posts: 81
Joined: Fri Aug 22, 2003 12:06 pm
Location: Germany
Contact:

Post by hearsedriver »

Try to create a new scope for each case.

Code: Select all

case foo:
{ // open new scope
  //...
}
break;
Cheers.
matthias gall, lead programmer at sechsta sinn - email matthias@sechsta-sinn.de
WhytWulf
Posts: 51
Joined: Mon Sep 08, 2003 11:14 am
Location: Australia, Tamworth, NSW
Contact:

Post by WhytWulf »

yay, some sleep and I can see exactly what is missing. I did not even think about missing source files, I just took for granted that everything was there..

and those compiler errors were cleared up in no time flat..

Now onto some serious no sleep and coding sessions :)
Post Reply