Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Windows build fails with MSVC 2017 nmake #2142

Closed
joelmcallister opened this issue Feb 18, 2020 · 3 comments
Closed

Windows build fails with MSVC 2017 nmake #2142

joelmcallister opened this issue Feb 18, 2020 · 3 comments
Assignees

Comments

@joelmcallister
Copy link

joelmcallister commented Feb 18, 2020

I have attempted to follow the make instructions, but it has failed with the following error:

C:\Users\joelm\Documents\Qt\filament>nmake

Microsoft (R) Program Maintenance Utility Version 14.16.27027.1
Copyright (C) Microsoft Corporation.  All rights reserved.

        cl.exe main.obj /link /libpath:"lib\\x86_64\\mt\\" filament.lib backend.lib bluegl.lib filabridge.lib filaflat.lib utils.lib  geometry.lib smol-v.lib ibl.lib  gdi32.lib user32.lib opengl32.lib
Microsoft (R) C/C++ Optimizing Compiler Version 19.16.27027.1 for x64
Copyright (C) Microsoft Corporation.  All rights reserved.

Microsoft (R) Incremental Linker Version 14.16.27027.1
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:main.exe
/libpath:lib\\x86_64\\mt\
filament.lib
backend.lib
bluegl.lib
filabridge.lib
filaflat.lib
utils.lib
geometry.lib
smol-v.lib
ibl.lib
gdi32.lib
user32.lib
opengl32.lib
main.obj
ibl.lib(CubemapIBL.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
ibl.lib(CubemapUtils.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
utils.lib(EntityManager.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
utils.lib(CountDownLatch.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
utils.lib(Panic.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
geometry.lib(SurfaceOrientation.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
backend.lib(OpenGLDriver.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
backend.lib(OpenGLProgram.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
bluegl.lib(BlueGL.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filabridge.lib(SamplerInterfaceBlock.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(Froxelizer.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
backend.lib(CommandBufferQueue.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
backend.lib(Driver.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
backend.lib(PlatformWGL.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(RenderPass.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(FrameInfo.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(ShadowMap.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(Culler.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(Scene.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(Renderer.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(View.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(FrameGraph.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(VertexBuffer.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(IndirectLight.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(Material.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(Texture.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(Engine.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(PostProcessManager.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(Camera.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
filament.lib(Fence.obj) : error LNK2001: unresolved external symbol __GSHandlerCheck_EH4
main.exe : fatal error LNK1120: 1 unresolved externals
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64\cl.exe"' : return code '0x2'
Stop.

.. using the makefile and main.cpp file described in the "Linking against Filament" section here, and executed in "x64 Native Tools Command Prompt for VS 2017".

Any help or advice would be greatly appreciated.

@bejado bejado self-assigned this Feb 18, 2020
@bejado
Copy link
Member

bejado commented Feb 18, 2020

Can you try building with VS 2019 instead? All of our pre-released binaries are built with 2019.

@romainguy
Copy link
Collaborator

Don't we require msvc 2019 anyway for proper C++14/17 support?

@joelmcallister
Copy link
Author

Thank you, that was exactly what the problem was. To give some context, I was attempting to use Filament under Qt on Windows, which has proved tricky since Qt does not have support for MSVC 2019.

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

No branches or pull requests

3 participants