I am trying to produce a statically linked executable in Win 10 with Visual Studio (latest available versions/updates for both).
I have selected to link against static multi threaded library and static MFC library. I DO NOT use MFC in any way, I use only JUCE and all the rest is C++ code written by me.
Unfortunately the program does not compile, with 61 linker errors (all pointing to juce code):
1>include_juce_core.obj : error LNK2001: unresolved external symbol __imp__CoInitialize@4
1>include_juce_core.obj : error LNK2001: unresolved external symbol __imp__ShellExecuteW@24
1>include_juce_core.obj : error LNK2001: unresolved external symbol __imp__CoCreateInstance@20
1>include_juce_core.obj : error LNK2001: unresolved external symbol __imp__SHFileOperationW@4
1>include_juce_core.obj : error LNK2001: unresolved external symbol __imp__SHGetSpecialFolderPathW@16
1>include_juce_events.obj : error LNK2001: unresolved external symbol __imp__OleUninitialize@0
1>include_juce_events.obj : error LNK2001: unresolved external symbol __imp__CommandLineToArgvW@8
1>include_juce_events.obj : error LNK2001: unresolved external symbol __imp__OleInitialize@4
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__GetOutlineTextMetricsW@12
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__CreateFontIndirectW@4
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__SetMapMode@8
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__RemoveFontMemResourceEx@4
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__DeleteObject@4
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__GetGlyphOutlineW@28
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__GetGlyphIndicesW@20
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__SetMapperFlags@8
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__DeleteDC@4
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__GetTextMetricsW@8
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__GetDeviceCaps@8
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__EnumFontFamiliesExW@20
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__CreateCompatibleDC@4
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__GetKerningPairsW@12
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__SelectObject@8
1>include_juce_graphics.obj : error LNK2001: unresolved external symbol __imp__AddFontMemResourceEx@16
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__CombineRgn@16
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__CreateBitmap@20
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__SHGetMalloc@4
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__CoTaskMemAlloc@4
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__ExtractAssociatedIconW@12
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__RestoreDC@8
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__ExcludeClipRect@20
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__GetObjectW@12
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__DoDragDrop@16
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__GetRegionData@12
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__CreateRectRgn@16
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__RegisterDragDrop@8
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__GetPixel@12
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__SHBrowseForFolderW@4
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__CreateRectRgnIndirect@4
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__StretchDIBits@52
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__SHGetPathFromIDListW@8
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__GetSaveFileNameW@4
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__CreateDIBSection@24
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__GetOpenFileNameW@4
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__SaveDC@4
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__RevokeDragDrop@4
1>include_juce_gui_basics.obj : error LNK2001: unresolved external symbol __imp__BitBlt@36
1>include_juce_gui_extra.obj : error LNK2001: unresolved external symbol __imp__VariantClear@4
1>include_juce_gui_extra.obj : error LNK2001: unresolved external symbol __imp__SafeArrayAccessData@8
1>include_juce_gui_extra.obj : error LNK2001: unresolved external symbol __imp__SafeArrayCreateVector@12
1>include_juce_gui_extra.obj : error LNK2001: unresolved external symbol __imp__OleSetContainedObject@8
1>include_juce_gui_extra.obj : error LNK2001: unresolved external symbol __imp__Shell_NotifyIconW@8
1>include_juce_gui_extra.obj : error LNK2001: unresolved external symbol __imp__OleCreate@28
1>include_juce_gui_extra.obj : error LNK2001: unresolved external symbol __imp__SafeArrayUnaccessData@4
1>include_juce_gui_extra.obj : error LNK2001: unresolved external symbol __imp__SysAllocString@4
1>include_juce_gui_extra.obj : error LNK2001: unresolved external symbol __imp__SysFreeString@4
1>include_juce_gui_extra.obj : error LNK2001: unresolved external symbol __imp__VariantInit@4
1>include_juce_gui_extra.obj : error LNK2001: unresolved external symbol __imp__SafeArrayDestroy@4
1>include_juce_opengl.obj : error LNK2001: unresolved external symbol __imp__SetPixelFormat@12
1>include_juce_opengl.obj : error LNK2001: unresolved external symbol __imp__SwapBuffers@4
1>include_juce_opengl.obj : error LNK2001: unresolved external symbol __imp__ChoosePixelFormat@8
If I choose to link against MFC dll everything compiles and runs fine (but only on the PC used to compile the executable). How can I fix the problem, since I do not use MFC in any way?