Compiling FluidSynth 1.1.1 from source. I have unresolved external symbol with glib, using Visual C++ Express 2010, how do I actually link the glib.lib correctly in the IDE? Do I need wsock libraries as well?
1>------ Build started: Project: fluidsynth_dll, Configuration: Release Win32 ------
2>------ Build started: Project: fluidsynth_lib, Configuration: Release Win32 ------
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(C:\Users\Wildfire\Desktop\fluidsynth-1.1.1\winbuild\fluidsynth_dll\.\Release\fluidsynth_dll.dll) does not match the Linker's OutputFile property value (C:\Users\Wildfire\Desktop\fluidsynth-1.1.1\winbuild\fluidsynth.dll). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(992,5): warning MSB8012: TargetName(fluidsynth_dll) does not match the Linker's OutputFile property value (fluidsynth). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
2> fluid_adriver.c
1> Creating library .\Release/fluidsynth.lib and object .\Release/fluidsynth.exp
1>fluid_voice.obj : error LNK2019: unresolved external symbol _g_atomic_int_add referenced in function _new_fluid_voice
1>fluid_chan.obj : error LNK2001: unresolved external symbol _g_atomic_int_add
1>fluid_hash.obj : error LNK2001: unresolved external symbol _g_atomic_int_add
1>fluid_synth.obj : error LNK2001: unresolved external symbol _g_atomic_int_add
1>fluid_tuning.obj : error LNK2001: unresolved external symbol _g_atomic_int_add
1>fluid_chan.obj : error LNK2019: unresolved external symbol _g_atomic_int_compare_and_exchange referenced in function _fluid_channel_set_sfont_bank_prog
1>fluid_synth.obj : error LNK2001: unresolved external symbol _g_atomic_int_compare_and_exchange
1>fluid_synth.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
1>fluid_sys.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
1>fluid_winmidi.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
1>fluid_cmd.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
1>fluid_event.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
1>fluid_midi_router.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
1>fluid_seq.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
1>fluid_cmd.obj : error LNK2019: unresolved external symbol _g_static_mutex_get_mutex_impl referenced in function _fluid_server_add_client
1>fluid_event.obj : error LNK2001: unresolved external symbol _g_static_mutex_get_mutex_impl
1>fluid_midi_router.obj : error LNK2001: unresolved external symbol _g_static_mutex_get_mutex_impl
1>fluid_seq.obj : error LNK2001: unresolved external symbol _g_static_mutex_get_mutex_impl
1>fluid_settings.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
1>fluid_synth.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
1>fluid_sys.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
1>fluid_winmidi.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
1>fluid_cmd.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
1>fluid_event.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
1>fluid_midi_router.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
1>fluid_seq.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
1>fluid_cmd.obj : error LNK2019: unresolved external symbol _g_static_mutex_init referenced in function _new_fluid_server
1>fluid_event.obj : error LNK2001: unresolved external symbol _g_static_mutex_init
1>fluid_midi_router.obj : error LNK2001: unresolved external symbol _g_static_mutex_init
1>fluid_seq.obj : error LNK2001: unresolved external symbol _g_static_mutex_init
1>fluid_settings.obj : error LNK2001: unresolved external symbol _g_thread_init
1>fluid_synth.obj : error LNK2019: unresolved external symbol _g_thread_init referenced in function _fluid_synth_cc_LOCAL
1>fluid_sys.obj : error LNK2001: unresolved external symbol _g_thread_init
1>fluid_winmidi.obj : error LNK2001: unresolved external symbol _g_thread_init
1>fluid_cmd.obj : error LNK2001: unresolved external symbol _g_thread_init
1>fluid_event.obj : error LNK2001: unresolved external symbol _g_thread_init
1>fluid_midi_router.obj : error LNK2001: unresolved external symbol _g_thread_init
1>fluid_seq.obj : error LNK2001: unresolved external symbol _g_thread_init
1>fluid_event.obj : error LNK2019: unresolved external symbol _g_static_mutex_free referenced in function __fluid_evt_heap_free
1>fluid_midi_router.obj : error LNK2001: unresolved external symbol _g_static_mutex_free
1>fluid_seq.obj : error LNK2001: unresolved external symbol _g_static_mutex_free
1>fluid_settings.obj : error LNK2019: unresolved external symbol _g_log referenced in function _new_fluid_str_setting
1>fluid_synth.obj : error LNK2001: unresolved external symbol _g_log
1>fluid_sys.obj : error LNK2001: unresolved external symbol _g_log
1>fluid_tuning.obj : error LNK2001: unresolved external symbol _g_log
1>fluid_event_queue.obj : error LNK2001: unresolved external symbol _g_log
1>fluid_filerenderer.obj : error LNK2001: unresolved external symbol _g_log
1>fluid_hash.obj : error LNK2001: unresolved external symbol _g_log
1>fluid_midi_router.obj : error LNK2001: unresolved external symbol _g_log
1>fluid_hash.obj : error LNK2019: unresolved external symbol _g_atomic_int_exchange_and_add referenced in function _fluid_hashtable_unref
1>fluid_settings.obj : error LNK2019: unresolved external symbol _g_static_rec_mutex_free referenced in function _delete_fluid_settings
1>fluid_synth.obj : error LNK2001: unresolved external symbol _g_static_rec_mutex_free
1>fluid_settings.obj : error LNK2019: unresolved external symbol _g_static_rec_mutex_unlock referenced in function _fluid_settings_get_type
1>fluid_synth.obj : error LNK2001: unresolved external symbol _g_static_rec_mutex_unlock
1>fluid_settings.obj : error LNK2019: unresolved external symbol _g_static_rec_mutex_lock referenced in function _fluid_settings_get_type
1>fluid_synth.obj : error LNK2001: unresolved external symbol _g_static_rec_mutex_lock
1>fluid_settings.obj : error LNK2019: unresolved external symbol _g_static_rec_mutex_init referenced in function _new_fluid_settings
1>fluid_synth.obj : error LNK2001: unresolved external symbol _g_static_rec_mutex_init
1>fluid_synth.obj : error LNK2019: unresolved external symbol _g_static_private_free referenced in function _delete_fluid_synth
1>fluid_synth.obj : error LNK2019: unresolved external symbol _g_thread_self referenced in function _fluid_synth_alloc_voice
1>fluid_synth.obj : error LNK2019: unresolved external symbol _g_static_private_set referenced in function _fluid_synth_tuning_iteration_start
1>fluid_synth.obj : error LNK2019: unresolved external symbol _g_static_private_get referenced in function _fluid_synth_tuning_iteration_next
1>fluid_synth.obj : error LNK2019: unresolved external symbol _g_atomic_pointer_compare_and_exchange referenced in function _fluid_synth_get_event_queue
1>fluid_synth.obj : error LNK2019: unresolved external symbol _g_static_private_init referenced in function _new_fluid_synth
1>fluid_sys.obj : error LNK2019: unresolved external symbol _g_get_current_time referenced in function _fluid_curtime
1>fluid_sys.obj : error LNK2019: unresolved external symbol _g_clear_error referenced in function _new_fluid_thread
1>fluid_sys.obj : error LNK2019: unresolved external symbol _g_thread_create_full referenced in function _new_fluid_thread
1>fluid_sys.obj : error LNK2019: unresolved external symbol _g_thread_join referenced in function _fluid_thread_join
1>fluid_sys.obj : error LNK2019: unresolved external symbol _g_usleep referenced in function _fluid_timer_run
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__recv#16 referenced in function _fluid_istream_gets
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__send#16 referenced in function _fluid_ostream_printf
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__closesocket#4 referenced in function _fluid_socket_close
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__WSAGetLastError#0 referenced in function _fluid_server_socket_run
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__inet_ntoa#4 referenced in function _fluid_server_socket_run
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__accept#12 referenced in function _fluid_server_socket_run
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__listen#8 referenced in function _new_fluid_server_socket
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__bind#12 referenced in function _new_fluid_server_socket
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__htonl#4 referenced in function _new_fluid_server_socket
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__htons#4 referenced in function _new_fluid_server_socket
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__WSACleanup#0 referenced in function _new_fluid_server_socket
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__socket#12 referenced in function _new_fluid_server_socket
1>fluid_sys.obj : error LNK2019: unresolved external symbol __imp__WSAStartup#8 referenced in function _new_fluid_server_socket
1>../fluidsynth.dll : fatal error LNK1120: 38 unresolved externals
3>------ Build started: Project: fluidsynth, Configuration: Release Win32 ------
2> fluid_aufile.c
3>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(C:\Users\Wildfire\Desktop\fluidsynth-1.1.1\winbuild\fluidsynth\.\Release\fluidsynth.exe) does not match the Linker's OutputFile property value (C:\Users\Wildfire\Desktop\fluidsynth-1.1.1\winbuild\fluidsynth.exe). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
2> fluid_chan.c
2> fluid_chorus.c
3> fluidsynth.vcxproj -> C:\Users\Wildfire\Desktop\fluidsynth-1.1.1\winbuild\fluidsynth\.\Release\fluidsynth.exe
2> fluid_cmd.c
2> fluid_conv.c
2> fluid_defsfont.c
2> fluid_dll.c
2> fluid_dsound.c
2> fluid_dsp_float.c
2> fluid_event.c
2> fluid_event_queue.c
2> fluid_filerenderer.c
2> fluid_gen.c
2> fluid_hash.c
2> fluid_list.c
2> fluid_mdriver.c
2> fluid_midi.c
2> fluid_midi_router.c
2> fluid_mod.c
2> Generating Code...
2> Compiling...
2> fluid_ramsfont.c
2> fluid_rev.c
2> fluid_seq.c
2> fluid_seqbind.c
2> fluid_settings.c
2> fluid_synth.c
2> fluid_sys.c
2> fluid_tuning.c
2> fluid_voice.c
2> fluid_winmidi.c
2> Generating Code...
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(1151,5): warning MSB8012: TargetPath(C:\Users\Wildfire\Desktop\fluidsynth-1.1.1\winbuild\fluidsynth_lib\.\Release\fluidsynth_lib.lib) does not match the Library's OutputFile property value (C:\Users\Wildfire\Desktop\fluidsynth-1.1.1\winbuild\fluidsynth_lib.lib). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Lib.OutputFile).
2> fluidsynth_lib.vcxproj -> C:\Users\Wildfire\Desktop\fluidsynth-1.1.1\winbuild\fluidsynth_lib\.\Release\fluidsynth_lib.lib
========== Build: 2 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Since you have already resolved most of your problems, and are just missing the winsock stuff.
You need to install the Windows Platform SDK, which will install a lot of libraries. In the install location's lib directory will be the file ws2_32.lib, which is the Winsock2 library you want to link against.
You need to link to the ws2_32.lib file, which, as birryree mentions, is a Winsock2 library. However, if you don't know how to link this in, here are the instructions as outlined in this MSDN Thread:
In your project properties:
Configuration Properties, Linker, Input, Additional Dependencies.
Then add ws2_32.lib to the semi-colon separated list.
Related
I was trying to setup a project with GLFW and GLAD.
The file structure is as following:
opengl
│ build.bat
│ main.c
│
├───bin
│
├───deps
│ └───lib-vc2022
│ glfw3.lib
│
└───include
├───glad
│ glad.c
│ glad.h
│
├───GLFW
│ glfw3.h
│ glfw3native.h
│
└───KHR
khrplatform.h
I have run vcvarsall.bat and set the compiler to be x64 so I have access to the msvc compiler.
To compile the code I ran build.bat which contains: (I got the 64 bit Prebuilt Windows binary from the glfw website)
#echo off
if not exist bin mkdir bin
pushd bin
cl /Zi /Od /I..\include C:\Dev\opengl\include\glad\glad.c ..\main.c /link /NODEFAULTLIB /LIBPATH:..\deps\lib-vc2022 glfw3.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib opengl32.lib
popd
main.c contains the code required to open a window in glfw.
The files I have included in main.c is as following:
#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <stdio.h>
I then ran build.bat and got the following errors:
glad.obj : error LNK2019: unresolved external symbol __stdio_common_vssca
nf referenced in function _vsscanf_s_l
glad.obj : error LNK2019: unresolved external symbol free referenced in f
unction free_exts
glad.obj : error LNK2019: unresolved external symbol malloc referenced in
function get_exts
glad.obj : error LNK2019: unresolved external symbol memcpy referenced in
function get_exts
glfw3.lib(input.obj) : error LNK2001: unresolved external symbol memcpy
glfw3.lib(win32_monitor.obj) : error LNK2001: unresolved external symbol
memcpy
glad.obj : error LNK2019: unresolved external symbol strlen referenced in
function get_exts
glad.obj : error LNK2019: unresolved external symbol strncmp referenced i
n function find_coreGL
glfw3.lib(win32_joystick.obj) : error LNK2001: unresolved external symbol
__GSHandlerCheck
glfw3.lib(wgl_context.obj) : error LNK2001: unresolved external symbol __
GSHandlerCheck
glfw3.lib(egl_context.obj) : error LNK2001: unresolved external symbol __
GSHandlerCheck
glfw3.lib(osmesa_context.obj) : error LNK2001: unresolved external symbol
__GSHandlerCheck
glfw3.lib(input.obj) : error LNK2001: unresolved external symbol __GSHand
lerCheck
glfw3.lib(win32_init.obj) : error LNK2001: unresolved external symbol __G
SHandlerCheck
glfw3.lib(win32_monitor.obj) : error LNK2001: unresolved external symbol
__GSHandlerCheck
glfw3.lib(win32_window.obj) : error LNK2001: unresolved external symbol _
_GSHandlerCheck
glad.obj : error LNK2001: unresolved external symbol __GSHandlerCheck
glfw3.lib(init.obj) : error LNK2001: unresolved external symbol __GSHandl
erCheck
glfw3.lib(window.obj) : error LNK2001: unresolved external symbol __GSHan
dlerCheck
glfw3.lib(context.obj) : error LNK2001: unresolved external symbol __GSHa
ndlerCheck
glfw3.lib(win32_joystick.obj) : error LNK2001: unresolved external symbol
__security_check_cookie
glfw3.lib(wgl_context.obj) : error LNK2001: unresolved external symbol __
security_check_cookie
glfw3.lib(egl_context.obj) : error LNK2001: unresolved external symbol __
security_check_cookie
glfw3.lib(osmesa_context.obj) : error LNK2001: unresolved external symbol
__security_check_cookie
glfw3.lib(input.obj) : error LNK2001: unresolved external symbol __securi
ty_check_cookie
glfw3.lib(win32_init.obj) : error LNK2001: unresolved external symbol __s
ecurity_check_cookie
glfw3.lib(win32_monitor.obj) : error LNK2001: unresolved external symbol
__security_check_cookie
glfw3.lib(win32_window.obj) : error LNK2001: unresolved external symbol _
_security_check_cookie
glad.obj : error LNK2001: unresolved external symbol __security_check_coo
kie
glfw3.lib(init.obj) : error LNK2001: unresolved external symbol __securit
y_check_cookie
glfw3.lib(window.obj) : error LNK2001: unresolved external symbol __secur
ity_check_cookie
glfw3.lib(context.obj) : error LNK2001: unresolved external symbol __secu
rity_check_cookie
glfw3.lib(win32_joystick.obj) : error LNK2001: unresolved external symbol
__security_cookie
glfw3.lib(wgl_context.obj) : error LNK2001: unresolved external symbol __
security_cookie
glfw3.lib(egl_context.obj) : error LNK2001: unresolved external symbol __
security_cookie
glfw3.lib(osmesa_context.obj) : error LNK2001: unresolved external symbol
__security_cookie
glfw3.lib(input.obj) : error LNK2001: unresolved external symbol __securi
ty_cookie
glfw3.lib(win32_init.obj) : error LNK2001: unresolved external symbol __s
ecurity_cookie
glfw3.lib(win32_monitor.obj) : error LNK2001: unresolved external symbol
__security_cookie
glfw3.lib(win32_window.obj) : error LNK2001: unresolved external symbol _
_security_cookie
glad.obj : error LNK2001: unresolved external symbol __security_cookie
glfw3.lib(init.obj) : error LNK2001: unresolved external symbol __securit
y_cookie
glfw3.lib(window.obj) : error LNK2001: unresolved external symbol __secur
ity_cookie
glfw3.lib(context.obj) : error LNK2001: unresolved external symbol __secu
rity_cookie
LINK : error LNK2001: unresolved external symbol mainCRTStartup
glfw3.lib(win32_joystick.obj) : error LNK2019: unresolved external symbol
__imp_calloc referenced in function _glfwInitJoysticksWin32
glfw3.lib(wgl_context.obj) : error LNK2001: unresolved external symbol __
imp_calloc
glfw3.lib(egl_context.obj) : error LNK2001: unresolved external symbol __
imp_calloc
glfw3.lib(osmesa_context.obj) : error LNK2001: unresolved external symbol
__imp_calloc
glfw3.lib(win32_monitor.obj) : error LNK2001: unresolved external symbol
__imp_calloc
glfw3.lib(monitor.obj) : error LNK2001: unresolved external symbol __imp_
calloc
glfw3.lib(vulkan.obj) : error LNK2001: unresolved external symbol __imp_c
alloc
glfw3.lib(win32_window.obj) : error LNK2001: unresolved external symbol _
_imp_calloc
glfw3.lib(init.obj) : error LNK2001: unresolved external symbol __imp_cal
loc
glfw3.lib(window.obj) : error LNK2001: unresolved external symbol __imp_c
alloc
glfw3.lib(input.obj) : error LNK2001: unresolved external symbol __imp_ca
lloc
glfw3.lib(win32_init.obj) : error LNK2001: unresolved external symbol __i
mp_calloc
glfw3.lib(win32_joystick.obj) : error LNK2019: unresolved external symbol
__imp_free referenced in function deviceCallback
glfw3.lib(wgl_context.obj) : error LNK2001: unresolved external symbol __
imp_free
glfw3.lib(egl_context.obj) : error LNK2001: unresolved external symbol __
imp_free
glfw3.lib(osmesa_context.obj) : error LNK2001: unresolved external symbol
__imp_free
glfw3.lib(win32_monitor.obj) : error LNK2001: unresolved external symbol
__imp_free
glfw3.lib(monitor.obj) : error LNK2001: unresolved external symbol __imp_
free
glfw3.lib(vulkan.obj) : error LNK2001: unresolved external symbol __imp_f
ree
glfw3.lib(win32_window.obj) : error LNK2001: unresolved external symbol _
_imp_free
glfw3.lib(init.obj) : error LNK2001: unresolved external symbol __imp_fre
e
glfw3.lib(window.obj) : error LNK2001: unresolved external symbol __imp_f
ree
glfw3.lib(input.obj) : error LNK2001: unresolved external symbol __imp_fr
ee
glfw3.lib(win32_init.obj) : error LNK2001: unresolved external symbol __i
mp_free
glfw3.lib(init.obj) : error LNK2019: unresolved external symbol __imp___s
tdio_common_vsprintf referenced in function _glfwInputError
glfw3.lib(win32_joystick.obj) : error LNK2001: unresolved external symbol
__imp___stdio_common_vsprintf
glfw3.lib(win32_monitor.obj) : error LNK2019: unresolved external symbol
memset referenced in function _glfwPlatformGetVideoMode
glfw3.lib(win32_joystick.obj) : error LNK2001: unresolved external symbol
memset
glfw3.lib(init.obj) : error LNK2001: unresolved external symbol memset
glfw3.lib(window.obj) : error LNK2001: unresolved external symbol memset
glfw3.lib(input.obj) : error LNK2001: unresolved external symbol memset
glfw3.lib(win32_init.obj) : error LNK2001: unresolved external symbol mem
set
glfw3.lib(monitor.obj) : error LNK2001: unresolved external symbol _fltus
ed
glfw3.lib(win32_window.obj) : error LNK2001: unresolved external symbol _
fltused
glfw3.lib(win32_joystick.obj) : error LNK2001: unresolved external symbol
_fltused
glfw3.lib(init.obj) : error LNK2001: unresolved external symbol _fltused
glfw3.lib(window.obj) : error LNK2001: unresolved external symbol _fltuse
d
glfw3.lib(input.obj) : error LNK2001: unresolved external symbol _fltused
glfw3.lib(win32_monitor.obj) : error LNK2001: unresolved external symbol
_fltused
glfw3.lib(window.obj) : error LNK2019: unresolved external symbol __imp_s
trncpy referenced in function glfwWindowHintString
glfw3.lib(input.obj) : error LNK2001: unresolved external symbol __imp_st
rncpy
glfw3.lib(monitor.obj) : error LNK2001: unresolved external symbol __imp_
strncpy
glfw3.lib(win32_joystick.obj) : error LNK2001: unresolved external symbol
__imp_strncpy
glfw3.lib(context.obj) : error LNK2019: unresolved external symbol strstr
referenced in function _glfwStringInExtensionString
glfw3.lib(win32_joystick.obj) : error LNK2001: unresolved external symbol
strstr
glfw3.lib(context.obj) : error LNK2019: unresolved external symbol __imp_
strncmp referenced in function _glfwRefreshContextAttribs
glfw3.lib(input.obj) : error LNK2001: unresolved external symbol __imp_st
rncmp
glfw3.lib(egl_context.obj) : error LNK2001: unresolved external symbol __
imp_strncmp
glfw3.lib(context.obj) : error LNK2019: unresolved external symbol __imp_
__stdio_common_vsscanf referenced in function sscanf
glfw3.lib(input.obj) : error LNK2019: unresolved external symbol __imp_st
rcspn referenced in function glfwUpdateGamepadMappings
glfw3.lib(input.obj) : error LNK2019: unresolved external symbol __imp_st
rspn referenced in function glfwUpdateGamepadMappings
glfw3.lib(input.obj) : error LNK2019: unresolved external symbol __imp_re
alloc referenced in function glfwUpdateGamepadMappings
glfw3.lib(win32_monitor.obj) : error LNK2001: unresolved external symbol
__imp_realloc
glfw3.lib(monitor.obj) : error LNK2001: unresolved external symbol __imp_
realloc
glfw3.lib(input.obj) : error LNK2019: unresolved external symbol __imp_st
rtoul referenced in function parseMapping
glfw3.lib(monitor.obj) : error LNK2019: unresolved external symbol __imp_
qsort referenced in function refreshVideoModes
glfw3.lib(win32_joystick.obj) : error LNK2001: unresolved external symbol
__imp_qsort
glfw3.lib(monitor.obj) : error LNK2019: unresolved external symbol memmov
e referenced in function _glfwInputMonitor
glfw3.lib(monitor.obj) : error LNK2019: unresolved external symbol powf r
eferenced in function glfwSetGamma
glfw3.lib(vulkan.obj) : error LNK2019: unresolved external symbol strcmp
referenced in function _glfwInitVulkan
glfw3.lib(win32_joystick.obj) : error LNK2001: unresolved external symbol
strcmp
glad.exe : fatal error LNK1120: 27 unresolved externals
I managed to solve this, by adding this to my batch file:
#echo off
if not exist bin mkdir bin
pushd bin
set LIBRARIES=glfw3.lib user32.lib gdi32.lib shell32.lib
cl /MDd /FC /Zi /O2 /I..\include ..\main.c C:\Dev\opengl\include\glad\glad.c /link /NODEFAULTLIB:msvcrt.lib /LIBPATH:..\deps\lib-vc2022\ %LIBRARIES%
popd
Facing these linker errors while trying to build libcurl from source on Windows Visual Studio
1>digest.obj : error LNK2001: unresolved external symbol
_Curl_base64_encode 1>http.obj : error LNK2001: unresolved external symbol _Curl_base64_encode 1>ntlm.obj : error LNK2001: unresolved external symbol _Curl_base64_encode 1>cram.obj : error LNK2019: unresolved external symbol _Curl_base64_decode referenced in function
_Curl_auth_decode_cram_md5_message 1>digest.obj : error LNK2001: unresolved external symbol _Curl_base64_decode 1>ntlm.obj : error LNK2001: unresolved external symbol _Curl_base64_decode 1>cram.obj : error LNK2001: unresolved external symbol _Curl_HMAC_MD5 1>curl_ntlm_core.obj : error LNK2001: unresolved external symbol
_Curl_HMAC_MD5 1>curl_ntlm_core.obj : error LNK2019: unresolved external symbol _Curl_md4it referenced in function
_Curl_ntlm_core_mk_nt_hash 1>digest.obj : error LNK2019: unresolved external symbol _Curl_md5it referenced in function
_Curl_auth_create_digest_http_message 1>ntlm.obj : error LNK2001: unresolved external symbol _Curl_md5it 1>digest.obj : error LNK2019: unresolved external symbol _Curl_MD5_init referenced in function
_Curl_auth_create_digest_md5_message 1>digest.obj : error LNK2019: unresolved external symbol _Curl_MD5_update referenced in function
_Curl_auth_create_digest_md5_message 1>digest.obj : error LNK2019: unresolved external symbol _Curl_MD5_final referenced in function
_Curl_auth_create_digest_md5_message 1>digest.obj : error LNK2019: unresolved external symbol _Curl_sha256it referenced in function
_Curl_auth_create_digest_http_message 1>digest.obj : error LNK2001: unresolved external symbol _Curl_DIGEST_MD5 1>doh.obj : error LNK2019: unresolved external symbol _Curl_base64url_encode referenced in function _dohprobe 1>tool_help.obj : error LNK2019: unresolved external symbol _curl_version referenced in function
_tool_version_info 1>tool_writeout_json.obj : error LNK2001: unresolved external symbol _curl_version 1>tool_libinfo.obj : error LNK2019: unresolved external symbol _curl_version_info referenced in function _get_libcurl_info 1>tool_paramhlp.obj : error LNK2001: unresolved external symbol _curl_version_info
It was a silly mistake from my side : i did not notice that i had few files with same name, because of that the later files were ignored by visual studio and this eventually led to these errors.
I built libcurl following the instructions for building libcurl as a static library in the curl/winbuild directory to the letter. It spat out a libcurl_a.lib, a collection of .h files, which I moved into folders that I promptly added to the PATH. I then attempt to build my program with the command
cl (*my source files*) /IC:/PATH_addon/include libcurl_a.lib Ws2_32.lib Wldap32.lib /DCURL_STATICLIB /link /LIBPATH:C:/PATH_addon/lib
Note:
I am building from the command line as the code was not written in an IDE, or on this machine
C:/PATH_addon/ is a folder where I dump all the things that need to be linked into path (it is linked to my path) so that I don't pollute the default path, or my system32 folder
However when I run the command, it tells me that there are 12 unresolved symbols:
libcurl_a.lib(tftp.obj) : error LNK2001: unresolved external symbol __imp___time64
libcurl_a.lib(cookie.obj) : error LNK2001: unresolved external symbol __imp___time64
libcurl_a.lib(hostip.obj) : error LNK2001: unresolved external symbol __imp___time64
libcurl_a.lib(http.obj) : error LNK2001: unresolved external symbol __imp___time64
libcurl_a.lib(ftp.obj) : error LNK2001: unresolved external symbol __imp___time64
libcurl_a.lib(telnet.obj) : error LNK2001: unresolved external symbol __imp__strncpy
libcurl_a.lib(curl_sspi.obj) : error LNK2001: unresolved external symbol __imp__strncpy
libcurl_a.lib(url.obj) : error LNK2001: unresolved external symbol __imp__strncpy
libcurl_a.lib(strerror.obj) : error LNK2001: unresolved external symbol __imp__strncpy
libcurl_a.lib(ftp.obj) : error LNK2001: unresolved external symbol __imp__strncpy
libcurl_a.lib(warnless.obj) : error LNK2019: unresolved external symbol __imp__read referenced in function _curlx_read
OLDNAMES.lib(read.obi) : error LNK2001: unresolved external symbol __imp__read
libcurl_a.lib(warnless.obj) : error LNK2019: unresolved external symbol __imp__write referenced in function _curlx_write
OLDNAMES.lib(write.obi) : error LNK2001: unresolved external symbol __imp__write
libcurl_a.lib(parsedate.obj) : error LNK2019: unresolved external symbol __imp___gmtime64 referenced in function _Curl_gmtime
libcurl_a.lib(strerror.obj) : error LNK2019: unresolved external symbol __imp__strerror referenced in function _Curl_strerror
libcurl_a.lib(curl_threads.obj) : error LNK2019: unresolved external symbol __imp___beginthreadex referenced in function _Curl_thread_create
libcurl_a.lib(smb.obj) : error LNK2019: unresolved external symbol __imp___getpid referenced in function _smb_format_message
libcurl_a.lib(file.obj) : error LNK2019: unresolved external symbol __imp__close referenced in function _file_done
OLDNAMES.lib(close.obi) : error LNK2001: unresolved external symbol __imp__close
libcurl_a.lib(file.obj) : error LNK2019: unresolved external symbol __imp__open referenced in function _file_connect
OLDNAMES.lib(open.obi) : error LNK2001: unresolved external symbol __imp__open
libcurl_a.lib(mime.obj) : error LNK2019: unresolved external symbol __imp__access referenced in function _curl_mime_filedata
OLDNAMES.lib(access.obi) : error LNK2001: unresolved external symbol __imp__access
MSVCRT.lib(_chandler4gs_.obj) : error LNK2019: unresolved external symbol __except_handler4_common referenced in function __except_handler4
Why can't these symbols be resolved, and is there a way to fix this?
Solution (thanks in part to the incredible #Hans Passant):
Adding the /NODEFAULTLIB:LIBCMT flag fixed the issue and allowed for a successful compile and execution.
I'm trying to build VTK with VTK_WRAP_TCL=ON and VTK_USE_TK=ON but having following linker errors:
> Compiling...
vtkTkAppInit.cxx
Compiling resources...
Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
Copyright (C) Microsoft Corporation. All rights reserved.
Compiling manifest to resources...
Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
Copyright (C) Microsoft Corporation. All rights reserved.
Linking...
Creating library D:\VTK\bin\bin\Debug\vtk.lib and object D:\VTK\bin\bin\Debug\vtk.exp
vtkTkAppInit.obj : error LNK2019: unresolved external symbol __imp__Tk_MainEx referenced in function _main
vtkTkAppInit.obj : error LNK2019: unresolved external symbol __imp__Tcl_CreateInterp referenced in function _main
vtkCommonTCL.lib(vtkTclUtil.obj) : error LNK2001: unresolved external symbol __imp__Tcl_CreateInterp
vtkTkAppInit.obj : error LNK2019: unresolved external symbol __imp__Tcl_SetVar referenced in function _Tcl_AppInit
vtkCommonTCL.lib(vtkTclUtil.obj) : error LNK2001: unresolved external symbol __imp__Tcl_SetVar
vtkTkAppInit.obj : error LNK2019: unresolved external symbol __imp__Tcl_Eval referenced in function _Tcl_AppInit
vtkTkAppInit.obj : error LNK2019: unresolved external symbol __imp__Tk_Init referenced in function _Tcl_AppInit
vtkTkAppInit.obj : error LNK2019: unresolved external symbol __imp__Tcl_Init referenced in function _Tcl_AppInit
vtkCommonTCL.lib(vtkTclUtil.obj) : error LNK2019: unresolved external symbol __imp__Tcl_GetAssocData referenced in function "struct vtkTclInterpStruct * __cdecl vtkGetInterpStruct(struct Tcl_Interp *)" (?vtkGetInterpStruct##YAPAUvtkTclInterpStruct##PAUTcl_Interp###Z)
vtkFilteringTCL.lib(vtkSourceTcl.obj) : error LNK2019: unresolved external symbol __imp__Tcl_DeleteCommand referenced in function "int __cdecl vtkSourceCppCommand(class vtkSource *,struct Tcl_Interp *,int,char * * const)" (?vtkSourceCppCommand##YAHPAVvtkSource##PAUTcl_Interp##HQAPAD#Z)
vtkRenderingTCL.lib(vtkAbstractVolumeMapperTcl.obj) : error LNK2001: unresolved external symbol __imp__Tcl_DeleteCommand
vtkRenderingTCL.lib(vtkImporterTcl.obj) : error LNK2001: unresolved external symbol __imp__Tcl_DeleteCommand
vtkWidgetsTCL.lib(vtkContinuousValueWidgetRepresentationTcl.obj) : error LNK2001: unresolved external symbol __imp__Tcl_DeleteCommand
vtkFilteringTCL.lib(vtkProcessObjectTcl.obj) : error LNK2001: unresolved external symbol __imp__Tcl_DeleteCommand
vtkFilteringTCL.lib(vtkMapper2DTcl.obj) : error LNK2001: unresolved external symbol __imp__Tcl_DeleteCommand
vtkFilteringTCL.lib(vtkViewportTcl.obj) : error LNK2001: unresolved external symbol __imp__Tcl_DeleteCommand
vtkFilteringTCL.lib(vtkAbstractMapperTcl.obj) : error LNK2001: unresolved external symbol __imp__Tcl_DeleteCommand
vtkFilteringTCL.lib(vtkThreadedImageAlgorithmTcl.obj) : error LNK2001: unresolved external symbol __imp__Tcl_DeleteCommand
vtkFilteringTCL.lib(vtkImageInPlaceFilterTcl.obj) : error LNK2001: unresolved external symbol __imp__Tcl_DeleteCommand
vtkFilteringTCL.lib(vtkRectilinearGridSourceTcl.obj) : error LNK2001: unresolved external symbol __imp__Tcl_DeleteCommand
.
.
D:\VTK\bin\bin\Debug\vtk.exe : fatal error LNK1120: 65 unresolved externals
Results
Build log was saved at "file://d:\VTK\bin\Wrapping\Tcl\vtk.dir\Debug\BuildLog.htm"
vtk - 22432 error(s), 0 warning(s)
Please help to solve.
Thanks.
I installed Tclx64 version and was trying to build it with 32 bit compiler.
Problem is solved by installing x86 version and compiled it with Debug|Win32.
http://public.kitware.com/pipermail/vtkusers/2011-September/118696.html this post helped me to understand the problem.
I am trying to run the code which is written using C and that is for a dialogic board dmv 960A 4T1pci. I am trying to convert that code to a DLL but I am facing 34 errors which are almost same , here is the list of them:
Linking...
Creating library Debug/drivendll.lib and object Debug/drivendll.exp
drivendll.obj : error LNK2001: unresolved external symbol _sr_waitevt
drivendll.obj : error LNK2001: unresolved external symbol _gc_CCLibStatusEx
drivendll.obj : error LNK2001: unresolved external symbol _gc_Start
drivendll.obj : error LNK2001: unresolved external symbol _sr_setparm
drivendll.obj : error LNK2001: unresolved external symbol _gc_DropCall
drivendll.obj : error LNK2001: unresolved external symbol _gc_WaitCall
drivendll.obj : error LNK2001: unresolved external symbol _gc_ResetLineDev
drivendll.obj : error LNK2001: unresolved external symbol _gc_Close
drivendll.obj : error LNK2001: unresolved external symbol _gc_ResultInfo
drivendll.obj : error LNK2001: unresolved external symbol _gc_util_delete_parm_blk
drivendll.obj : error LNK2001: unresolved external symbol _gc_SetUserInfo
drivendll.obj : error LNK2001: unresolved external symbol _gc_util_insert_parm_val
drivendll.obj : error LNK2001: unresolved external symbol _gc_GetMetaEvent
drivendll.obj : error LNK2001: unresolved external symbol _gc_AlarmSourceObjectName
drivendll.obj : error LNK2001: unresolved external symbol _gc_AlarmSourceObjectID
drivendll.obj : error LNK2001: unresolved external symbol _gc_AlarmName
drivendll.obj : error LNK2001: unresolved external symbol _gc_AlarmNumber
drivendll.obj : error LNK2001: unresolved external symbol _gc_ReleaseCallEx
drivendll.obj : error LNK2001: unresolved external symbol _gc_AnswerCall
drivendll.obj : error LNK2001: unresolved external symbol _gc_AcceptCall
drivendll.obj : error LNK2001: unresolved external symbol _gc_GetCallInfo
drivendll.obj : error LNK2001: unresolved external symbol _gc_SetAlarmNotifyAll
drivendll.obj : error LNK2001: unresolved external symbol _gc_GetResourceH
drivendll.obj : error LNK2001: unresolved external symbol _gc_MakeCall
drivendll.obj : error LNK2001: unresolved external symbol _gc_OpenEx
drivendll.obj : error LNK2001: unresolved external symbol _gc_LoadDxParm
drivendll.obj : error LNK2001: unresolved external symbol __imp__inet_ntoa#4
drivendll.obj : error LNK2001: unresolved external symbol __imp__gethostbyname#4
drivendll.obj : error LNK2001: unresolved external symbol __imp__gethostname#8
drivendll.obj : error LNK2001: unresolved external symbol _gc_util_insert_parm_ref
drivendll.obj : error LNK2001: unresolved external symbol _gc_SetCallingNum
drivendll.obj : error LNK2001: unresolved external symbol _gc_ErrorInfo
drivendll.obj : error LNK2001: unresolved external symbol _gc_Stop
Debug/drivendll.dll : fatal error LNK1120: 33 unresolved externals
Error executing link.exe.
Update
It appears you are using the following library:
http://threebit.net/projects/jvr/download/
Ensure that you are linking to the appropriate library object for your platform, as mentioned here in another answer. There is a linux version, a windows version, and a jar for java dev. Ensure you have included the right one in your linker settings. For example, here is how we would do this in eclipse.
http://wiki.eclipse.org/CDT/User/FAQ#How_do_I_add_an_external_library_to_my_C.2B.2B_project.3F
Original Answer*
"unresolved external symbol" would suggest that in your project you're requiring and or using classes linked to some library that you are not properly including in your project. Whatever IDE you're using OR in your makefiles, ensure that you have properly included any library files required for your project.
It seems you are not using the correct compiler. A DLL should only work on windows based systems and it seems that the compiler cannot find the methods and constants that are available on the board you are working with.