Skip to content
This repository has been archived by the owner on Aug 11, 2023. It is now read-only.

Does ionremote work on Windows x64? #29

Open
MrMabulous opened this issue Aug 27, 2020 · 0 comments
Open

Does ionremote work on Windows x64? #29

MrMabulous opened this issue Aug 27, 2020 · 0 comments

Comments

@MrMabulous
Copy link

MrMabulous commented Aug 27, 2020

I'm using ion (mainly ionmath) for a while in another project that I build with Bazel on windows. with a few small changes (master...MrMabulous:master) ion builds successfully using Visual Studio 2019's MSVC.

now I wanted to give ionremote a try but I'm getting linker errors when trying to create an ion::remote::RemoteServer

ionremote.lib(ionremote.remoteserver.obj) : error LNK2019: unresolved external symbol "bool __cdecl IonRemoteGetUri::RegisterAssets(void)" (?RegisterAssets@IonRemoteGetUri@@YA_NXZ) referenced in function "void __cdecl ion::remote::`anonymous namespace'::RegisterAssetsForRemoteServer(void)" (?RegisterAssetsForRemoteServer@?A0xe096928b@remote@ion@@YAXXZ)
ionremote.lib(ionremote.remoteserver.obj) : error LNK2019: unresolved external symbol "bool __cdecl IonRemoteRoot::RegisterAssets(void)" (?RegisterAssets@IonRemoteRoot@@YA_NXZ) referenced in function "void __cdecl ion::remote::`anonymous namespace'::RegisterAssetsForRemoteServer(void)" (?RegisterAssetsForRemoteServer@?A0xe096928b@remote@ion@@YAXXZ)
ionremote.lib(ionremote.nodegraphhandler.obj) : error LNK2019: unresolved external symbol "void __cdecl IonRemoteNodeGraphRoot::RegisterAssetsOnce(void)" (?RegisterAssetsOnce@IonRemoteNodeGraphRoot@@YAXXZ) referenced in function "public: __cdecl ion::remote::NodeGraphHandler::NodeGraphHandler(void)" (??0NodeGraphHandler@remote@ion@@QEAA@XZ)
ionremote.lib(ionremote.calltracehandler.obj) : error LNK2019: unresolved external symbol "void __cdecl IonRemoteCallTraceRoot::RegisterAssetsOnce(void)" (?RegisterAssetsOnce@IonRemoteCallTraceRoot@@YAXXZ) referenced in function "public: __cdecl ion::remote::CallTraceHandler::CallTraceHandler(void)" (??0CallTraceHandler@remote@ion@@QEAA@XZ)
ionremote.lib(ionremote.resourcehandler.obj) : error LNK2019: unresolved external symbol "void __cdecl IonRemoteResourcesRoot::RegisterAssetsOnce(void)" (?RegisterAssetsOnce@IonRemoteResourcesRoot@@YAXXZ) referenced in function "public: __cdecl ion::remote::ResourceHandler::ResourceHandler(class ion::base::SharedPtr<class ion::gfx::Renderer> const &)" (??0ResourceHandler@remote@ion@@QEAA@AEBV?$SharedPtr@VRenderer@gfx@ion@@@base@2@@Z)
ionremote.lib(ionremote.settinghandler.obj) : error LNK2019: unresolved external symbol "void __cdecl IonRemoteSettingsRoot::RegisterAssetsOnce(void)" (?RegisterAssetsOnce@IonRemoteSettingsRoot@@YAXXZ) referenced in function "public: __cdecl ion::remote::SettingHandler::SettingHandler(void)" (??0SettingHandler@remote@ion@@QEAA@XZ)
ionremote.lib(ionremote.shaderhandler.obj) : error LNK2019: unresolved external symbol "void __cdecl IonRemoteShadersRoot::RegisterAssetsOnce(void)" (?RegisterAssetsOnce@IonRemoteShadersRoot@@YAXXZ) referenced in function "public: __cdecl ion::remote::ShaderHandler::ShaderHandler(class ion::base::SharedPtr<class ion::gfxutils::ShaderManager> const &,class ion::base::SharedPtr<class ion::gfx::Renderer> const &)" (??0ShaderHandler@remote@ion@@QEAA@AEBV?$SharedPtr@VShaderManager@gfxutils@ion@@@base@2@AEBV?$SharedPtr@VRenderer@gfx@ion@@@42@@Z)
ionremote.lib(ionremote.tracinghandler.obj) : error LNK2019: unresolved external symbol "void __cdecl IonRemoteTracingRoot::RegisterAssetsOnce(void)" (?RegisterAssetsOnce@IonRemoteTracingRoot@@YAXXZ) referenced in function "public: __cdecl ion::remote::TracingHandler::TracingHandler(class ion::base::SharedPtr<class ion::gfxutils::Frame> const &,class ion::base::SharedPtr<class ion::gfx::Renderer> const &)" (??0TracingHandler@remote@ion@@QEAA@AEBV?$SharedPtr@VFrame@gfxutils@ion@@@base@2@AEBV?$SharedPtr@VRenderer@gfx@ion@@@42@@Z)
ionportgfx.lib(ionportgfx.wglcontext.obj) : error LNK2019: unresolved external symbol __imp_wglCreateContext referenced in function "public: bool __cdecl ion::portgfx::`anonymous namespace'::WglContext::InitOwned(class ion::portgfx::A0xe74b9e20::WglContext const *)" (?InitOwned@WglContext@?A0xe74b9e20@portgfx@ion@@QEAA_NPEBV1234@@Z)
ionportgfx.lib(ionportgfx.wglcontext.obj) : error LNK2019: unresolved external symbol __imp_wglDeleteContext referenced in function "public: virtual __cdecl ion::portgfx::`anonymous namespace'::WglContext::~WglContext(void)" (??1WglContext@?A0xe74b9e20@portgfx@ion@@UEAA@XZ)
ionportgfx.lib(ionportgfx.wglcontext.obj) : error LNK2019: unresolved external symbol __imp_wglGetCurrentContext referenced in function "public: static unsigned __int64 __cdecl ion::portgfx::GlContext::GetCurrentGlContextId(void)" (?GetCurrentGlContextId@GlContext@portgfx@ion@@SA_KXZ)
ionportgfx.lib(ionportgfx.wglcontext.obj) : error LNK2019: unresolved external symbol __imp_wglGetCurrentDC referenced in function "public: bool __cdecl ion::portgfx::`anonymous namespace'::WglContext::InitWrapped(void)" (?InitWrapped@WglContext@?A0xe74b9e20@portgfx@ion@@QEAA_NXZ)
ionportgfx.lib(ionportgfx.wglcontext.obj) : error LNK2019: unresolved external symbol __imp_wglGetProcAddress referenced in function "private: void * __cdecl ion::portgfx::`anonymous namespace'::WglContext::GetProcAddressImpl(char const *,bool)const " (?GetProcAddressImpl@WglContext@?A0xe74b9e20@portgfx@ion@@AEBAPEAXPEBD_N@Z)
ionportgfx.lib(ionportgfx.wglcontext.obj) : error LNK2019: unresolved external symbol __imp_wglMakeCurrent referenced in function "public: virtual void __cdecl ion::portgfx::`anonymous namespace'::WglContext::ClearCurrentContextImpl(void)" (?ClearCurrentContextImpl@WglContext@?A0xe74b9e20@portgfx@ion@@UEAAXXZ)
ionportgfx.lib(ionportgfx.wglcontext.obj) : error LNK2019: unresolved external symbol __imp_wglShareLists referenced in function "public: bool __cdecl ion::portgfx::`anonymous namespace'::WglContext::InitOwned(class ion::portgfx::A0xe74b9e20::WglContext const *)" (?InitOwned@WglContext@?A0xe74b9e20@portgfx@ion@@QEAA_NPEBV1234@@Z)
ionportgfx.lib(ionportgfx.wglcontext.obj) : error LNK2019: unresolved external symbol __imp_SwapBuffers referenced in function "public: virtual void __cdecl ion::portgfx::`anonymous namespace'::WglContext::SwapBuffers(void)" (?SwapBuffers@WglContext@?A0xe74b9e20@portgfx@ion@@UEAAXXZ)
ionportgfx.lib(ionportgfx.window_win32.obj) : error LNK2019: unresolved external symbol __imp_ChoosePixelFormat referenced in function "public: static class std::unique_ptr<class ion::portgfx::WindowWin32,struct std::default_delete<class ion::portgfx::WindowWin32> > __cdecl ion::portgfx::WindowWin32::Create(int,int,int,int)" (?Create@WindowWin32@portgfx@ion@@SA?AV?$unique_ptr@VWindowWin32@portgfx@ion@@U?$default_delete@VWindowWin32@portgfx@ion@@@std@@@std@@HHHH@Z)
ionportgfx.lib(ionportgfx.window_win32.obj) : error LNK2019: unresolved external symbol __imp_SetPixelFormat referenced in function "public: static class std::unique_ptr<class ion::portgfx::WindowWin32,struct std::default_delete<class ion::portgfx::WindowWin32> > __cdecl ion::portgfx::WindowWin32::Create(int,int,int,int)" (?Create@WindowWin32@portgfx@ion@@SA?AV?$unique_ptr@VWindowWin32@portgfx@ion@@U?$default_delete@VWindowWin32@portgfx@ion@@@std@@@std@@HHHH@Z)
ionportgfx.lib(ionportgfx.window_win32.obj) : error LNK2019: unresolved external symbol __imp_DefWindowProcW referenced in function "public: __cdecl ion::portgfx::`anonymous namespace'::IonWindowClass::IonWindowClass(void)" (??0IonWindowClass@?A0xb7d60742@portgfx@ion@@QEAA@XZ)
ionportgfx.lib(ionportgfx.window_win32.obj) : error LNK2019: unresolved external symbol __imp_UnregisterClassA referenced in function "private: virtual __cdecl ion::base::StaticDeleter<class ion::portgfx::`anonymous namespace'::IonWindowClass>::~StaticDeleter<class ion::portgfx::`anonymous namespace'::IonWindowClass>(void)" (??1?$StaticDeleter@VIonWindowClass@?A0xb7d60742@portgfx@ion@@@base@ion@@EEAA@XZ)
ionportgfx.lib(ionportgfx.window_win32.obj) : error LNK2019: unresolved external symbol __imp_RegisterClassExA referenced in function "public: __cdecl ion::portgfx::`anonymous namespace'::IonWindowClass::IonWindowClass(void)" (??0IonWindowClass@?A0xb7d60742@portgfx@ion@@QEAA@XZ)
ionportgfx.lib(ionportgfx.window_win32.obj) : error LNK2019: unresolved external symbol __imp_CreateWindowExA referenced in function "public: static class std::unique_ptr<class ion::portgfx::WindowWin32,struct std::default_delete<class ion::portgfx::WindowWin32> > __cdecl ion::portgfx::WindowWin32::Create(int,int,int,int)" (?Create@WindowWin32@portgfx@ion@@SA?AV?$unique_ptr@VWindowWin32@portgfx@ion@@U?$default_delete@VWindowWin32@portgfx@ion@@@std@@@std@@HHHH@Z)
ionportgfx.lib(ionportgfx.window_win32.obj) : error LNK2019: unresolved external symbol __imp_DestroyWindow referenced in function "public: __cdecl std::unique_ptr<class ion::portgfx::WindowWin32,struct std::default_delete<class ion::portgfx::WindowWin32> >::~unique_ptr<class ion::portgfx::WindowWin32,struct std::default_delete<class ion::portgfx::WindowWin32> >(void)" (??1?$unique_ptr@VWindowWin32@portgfx@ion@@U?$default_delete@VWindowWin32@portgfx@ion@@@std@@@std@@QEAA@XZ)
ionportgfx.lib(ionportgfx.window_win32.obj) : error LNK2019: unresolved external symbol __imp_GetDC referenced in function "public: static class std::unique_ptr<class ion::portgfx::WindowWin32,struct std::default_delete<class ion::portgfx::WindowWin32> > __cdecl ion::portgfx::WindowWin32::Create(int,int,int,int)" (?Create@WindowWin32@portgfx@ion@@SA?AV?$unique_ptr@VWindowWin32@portgfx@ion@@U?$default_delete@VWindowWin32@portgfx@ion@@@std@@@std@@HHHH@Z)
ionprofile.lib(ionprofile.calltracemanager.obj) : error LNK2019: unresolved external symbol "void __cdecl ion::analytics::OutputBenchmarkPretty(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool,class ion::analytics::Benchmark const &,class std::basic_ostream<char,struct std::char_traits<char> > &)" (?OutputBenchmarkPretty@analytics@ion@@YAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_NAEBVBenchmark@12@AEAV?$basic_ostream@DU?$char_traits@D@std@@@4@@Z) referenced in function "public: virtual __cdecl ion::profile::CallTraceManager::~CallTraceManager(void)" (??1CallTraceManager@profile@ion@@UEAA@XZ)

I suspect this has something to do with zipasset_generator.gypi and the iad files in remote/res not working correctly? (though I'm not getting any errors when compiling ion).

Is ionremote supposed to work on Windows at all?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant