error build "\code\nel\nel.sln"

Added by packpro over 4 years ago

hi,
i copy "OPENGL32.LIB" into "\external\lib".
and then, i have error build "nel.sln".

error message:
1> Creating library ..\..\..\..\lib\nel_drv_opengl_win_d.lib and object ..\..\..\..\lib\nel_drv_opengl_win_d.exp
1>driver_opengl.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall NL3D::CDriverGL::showCursor(bool)" (?showCursor@CDriverGL@NL3D@UAEX_N@Z)
1>driver_opengl.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall NL3D::CDriverGL::setMousePos(float,float)" (?setMousePos@CDriverGL@NL3D
@UAEXMM@Z)
1>driver_opengl.obj : error LNK2001: unresolved external symbol "public: virtual struct NLMISC::IMouseDevice * __thiscall NL3D::CDriverGL::enableLowLevelMouse(bool,bool)" (?enableLowLevelMouse@CDriverGL@NL3D@UAEPAUIMouseDevice@NLMISC@_N0@Z)
1>driver_opengl.obj : error LNK2001: unresolved external symbol "public: virtual struct NLMISC::IKeyboardDevice * __thiscall NL3D::CDriverGL::enableLowLevelKeyboard(bool)" (?enableLowLevelKeyboard@CDriverGL@NL3D@UAEPAUIKeyboardDevice@NLMISC@_N@Z)
1>driver_opengl.obj : error LNK2001: unresolved external symbol "public: virtual unsigned int __thiscall NL3D::CDriverGL::getDoubleClickDelay(bool)" (?getDoubleClickDelay@CDriverGL@NL3D@UAEI_N@Z)
1>driver_opengl.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall NL3D::CDriverGL::setCapture(bool)" (?setCapture@CDriverGL@NL3D
@UAEX_N@Z)
1>driver_opengl.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall NL3D::CDriverGL::isSystemCursorCaptured(void)" (?isSystemCursorCaptured@CDriverGL@NL3D@UAE_NXZ)
1>driver_opengl.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall NL3D::CDriverGL::addCursor(class stlpx_std::basic_string<char,class stlpx_std::char_traits<char>,class stlpx_std::allocator<char> > const &,class NLMISC::CBitmap const &)" (?addCursor@CDriverGL@NL3D
@UAEXABV?$basic_string@DV?$char_traits@D@stlpx_std@V?$allocator@D@2@stlpx_std@ABVCBitmap@NLMISC@Z)
1>driver_opengl.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall NL3D::CDriverGL::setCursor(class stlpx_std::basic_string<char,class stlpx_std::char_traits<char>,class stlpx_std::allocator<char> > const &,class NLMISC::CRGBA,unsigned char,int,int,bool)" (?setCursor@CDriverGL@NL3D
@UAEXABV?$basic_string@DV?$char_traits@D@stlpx_std@V?$allocator@D@2@stlpx_std@VCRGBA@NLMISC@EHH_N@Z)
1>driver_opengl.obj : error LNK2001: unresolved external symbol "public: virtual struct NLMISC::IInputDeviceManager * __thiscall NL3D::CDriverGL::getLowLevelInputDeviceManager(void)" (?getLowLevelInputDeviceManager@CDriverGL@NL3D@UAEPAUIInputDeviceManager@NLMISC@XZ)
1>driver_opengl.obj : error LNK2019: unresolved external symbol "public: __thiscall NL3D::CDriverGL::CCursor::~CCursor(void)" (??1CCursor@CDriverGL@NL3D@QAE@XZ) referenced in function "void __cdecl stlpx_std::_Destroy<struct stlpx_std::pair<class stlpx_std::basic_string<char,class stlpx_std::char_traits<char>,class stlpx_std::allocator<char> > const ,class NL3D::CDriverGL::CCursor> >(struct stlpx_std::pair<class stlpx_std::basic_string<char,class stlpx_std::char_traits<char>,class stlpx_std::allocator<char> > const ,class NL3D::CDriverGL::CCursor> *)" (??$_Destroy@U?$pair$$CBV?$basic_string@DV?$char_traits@D@stlpx_std@V?$allocator@D@2@stlpx_std@VCCursor@CDriverGL@NL3D@stlpx_std@stlpx_std@YAXPAU?$pair@$$CBV?$basic_string@DV?$char_traits@D@stlpx_std@V?$allocator@D@2@stlpx_std@VCCursor@CDriverGL@NL3D@0@Z)
1>driver_opengl_window.obj : error LNK2019: unresolved external symbol "private: void __thiscall NL3D::CDriverGL::createCursors(void)" (?createCursors@CDriverGL@NL3D@AAEXXZ) referenced in function "public: virtual bool __thiscall NL3D::CDriverGL::init(unsigned int,void (__cdecl*)(void))" (?init@CDriverGL@NL3D@UAE_NIP6AXXZ@Z)
1>driver_opengl_window.obj : error LNK2019: unresolved external symbol "private: void __thiscall NL3D::CDriverGL::releaseCursors(void)" (?releaseCursors@CDriverGL@NL3D@AAEXXZ) referenced in function "private: bool __thiscall NL3D::CDriverGL::destroyWindow(void)" (?destroyWindow@CDriverGL@NL3D@AAE_NXZ)
1>driver_opengl_window.obj : error LNK2019: unresolved external symbol "private: void __thiscall NL3D::CDriverGL::updateCursor(bool)" (?updateCursor@CDriverGL@NL3D@AAEX_N@Z) referenced in function "public: virtual bool __thiscall NL3D::CDriverGL::setMode(struct NL3D::GfxMode const &)" (?setMode@CDriverGL@NL3D@UAE_NABUGfxMode@2@@Z)
1>..\..\..\..\lib\nel_drv_opengl_win_d.dll : fatal error LNK1120: 14 unresolved externals
1>Build log was saved at "file://d:\work\r_game\code\nel\obj\Debug\driver_opengl\BuildLog.htm"
1>driver_opengl - 15 error(s), 0 warning(s) ========== Build: 0 succeeded, 1 failed, 2 up-to-date, 0 skipped ==========


Replies (11)

RE: error build "\code\nel\nel.sln" - Added by kervala over 4 years ago

Opengl32.lib should be in Windows SDK so you shouldn't copy or move this file.

Please don't use already generated .sln.

You should follow this tutorial :

http://dev.ryzom.com/wiki/ryzom/BuildForWindowsCmake

RE: error build "\code\nel\nel.sln" - Added by ShamanRU over 4 years ago

I have problem with this solution too. I clone repository, set directories and start build nel.sln.

RE: error build "\code\nel\nel.sln" - Added by sfb over 4 years ago

ShamanRU,

See the second sentence in kervala's solution: don't use nel.sln, please see BuildForWindowsCmake to use CMake to generate up-to-date solutions and projects. The legacy nel.sln and all.sln and so on only exist for specific users. Sorry for the confusion!

Thank you!
sfb
/s

RE: error build "\code\nel\nel.sln" - Added by packpro over 4 years ago

sfb,

There is no "plugin_max_public" in "RyzomCore.sln".
Do build "D:\work\r_game\code\nel\tools\3d\plugin_max\plugin_max_public.sln"?
Regard!

RE: error build "\code\nel\nel.sln" - Added by sfb over 4 years ago

packpro,

In CMake's UI tool find WITH_NEL_MAXPLUGINS and check it. Click Configure and then Generate. VS will prompt you if you want to reload and execute a build. I typically say "no" to this but you can say "yes." The only difference is that if you say "yes" it will execute ALL_BUILD. I'm usually working on a specific project. Anyway, click "no" and wait for it to finish reloading the solution. You should see a whole new set that say like: "MAX Plugin, NeL Export" - there should be 11 new projects prefixed with "MAX Plugin".

Thank you!
sfb
/s

RE: error build "\code\nel\nel.sln" - Added by packpro over 4 years ago

sfb,

after check WITH_NEL_MAXPLUGINS, I have error.

CMake Error at CMakeModules/PCHSupport.cmake:188 (SET_TARGET_PROPERTIES):
set_target_properties Can not find target to add properties to:
object_viewer_dll
Call Stack (most recent call first):
nel/tools/3d/plugin_max/nel_export/CMakeLists.txt:31 (ADD_NATIVE_PRECOMPILED_HEADER)

Regard!
packpro

RE: error build "\code\nel\nel.sln" - Added by kervala over 4 years ago

You have to check WITH_MFC too, else it won't compile object_viewer (the old one) which is needed by max plugins :)

RE: error build "\code\nel\nel.sln" - Added by sfb over 4 years ago

packpro,

What kervala said means you need to have Visual Studio Pro installed. I think there's a way to build MFC applications using Visual Studio Express but it's not really "supported" because it's really a work-around on Microsoft's limitations. But here's a link to a guide: MFC in VS Express

Good luck!
sfb
/s

RE: error build "\code\nel\nel.sln" - Added by packpro over 4 years ago

Hi,
After check WITH_MFC, I have no error.
Thank you!

RE: error build "\code\nel\nel.sln" - Added by sfb over 4 years ago

packpro,

Fantastic! Good luck with the rest of your building.

Also don't be afraid to meet us on IRC. A lot of these minor problems can be solved much quicker there.

Thanks,
sfb
/s

RE: error build "\code\nel\nel.sln" - Added by packpro over 4 years ago

sfb,
Thanks for your kindly reply.

(1-11/11)