title: unresolved external symbol with glib and VS C++
body: <p>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?</p>
  
  <pre><code>1&gt;------ Build started: Project: fluidsynth_dll, Configuration: Release Win32 ------
  2&gt;------ Build started: Project: fluidsynth_lib, Configuration: Release Win32 ------
  1&gt;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&gt;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&gt;  fluid_adriver.c
  1&gt;     Creating library .\Release/fluidsynth.lib and object .\Release/fluidsynth.exp
  1&gt;fluid_voice.obj : error LNK2019: unresolved external symbol _g_atomic_int_add referenced in function _new_fluid_voice
  1&gt;fluid_chan.obj : error LNK2001: unresolved external symbol _g_atomic_int_add
  1&gt;fluid_hash.obj : error LNK2001: unresolved external symbol _g_atomic_int_add
  1&gt;fluid_synth.obj : error LNK2001: unresolved external symbol _g_atomic_int_add
  1&gt;fluid_tuning.obj : error LNK2001: unresolved external symbol _g_atomic_int_add
  1&gt;fluid_chan.obj : error LNK2019: unresolved external symbol _g_atomic_int_compare_and_exchange referenced in function _fluid_channel_set_sfont_bank_prog
  1&gt;fluid_synth.obj : error LNK2001: unresolved external symbol _g_atomic_int_compare_and_exchange
  1&gt;fluid_synth.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
  1&gt;fluid_sys.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
  1&gt;fluid_winmidi.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
  1&gt;fluid_cmd.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
  1&gt;fluid_event.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
  1&gt;fluid_midi_router.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
  1&gt;fluid_seq.obj : error LNK2001: unresolved external symbol __imp__g_thread_functions_for_glib_use
  1&gt;fluid_cmd.obj : error LNK2019: unresolved external symbol _g_static_mutex_get_mutex_impl referenced in function _fluid_server_add_client
  1&gt;fluid_event.obj : error LNK2001: unresolved external symbol _g_static_mutex_get_mutex_impl
  1&gt;fluid_midi_router.obj : error LNK2001: unresolved external symbol _g_static_mutex_get_mutex_impl
  1&gt;fluid_seq.obj : error LNK2001: unresolved external symbol _g_static_mutex_get_mutex_impl
  1&gt;fluid_settings.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
  1&gt;fluid_synth.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
  1&gt;fluid_sys.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
  1&gt;fluid_winmidi.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
  1&gt;fluid_cmd.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
  1&gt;fluid_event.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
  1&gt;fluid_midi_router.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
  1&gt;fluid_seq.obj : error LNK2001: unresolved external symbol __imp__g_threads_got_initialized
  1&gt;fluid_cmd.obj : error LNK2019: unresolved external symbol _g_static_mutex_init referenced in function _new_fluid_server
  1&gt;fluid_event.obj : error LNK2001: unresolved external symbol _g_static_mutex_init
  1&gt;fluid_midi_router.obj : error LNK2001: unresolved external symbol _g_static_mutex_init
  1&gt;fluid_seq.obj : error LNK2001: unresolved external symbol _g_static_mutex_init
  1&gt;fluid_settings.obj : error LNK2001: unresolved external symbol _g_thread_init
  1&gt;fluid_synth.obj : error LNK2019: unresolved external symbol _g_thread_init referenced in function _fluid_synth_cc_LOCAL
  1&gt;fluid_sys.obj : error LNK2001: unresolved external symbol _g_thread_init
  1&gt;fluid_winmidi.obj : error LNK2001: unresolved external symbol _g_thread_init
  1&gt;fluid_cmd.obj : error LNK2001: unresolved external symbol _g_thread_init
  1&gt;fluid_event.obj : error LNK2001: unresolved external symbol _g_thread_init
  1&gt;fluid_midi_router.obj : error LNK2001: unresolved external symbol _g_thread_init
  1&gt;fluid_seq.obj : error LNK2001: unresolved external symbol _g_thread_init
  1&gt;fluid_event.obj : error LNK2019: unresolved external symbol _g_static_mutex_free referenced in function __fluid_evt_heap_free
  1&gt;fluid_midi_router.obj : error LNK2001: unresolved external symbol _g_static_mutex_free
  1&gt;fluid_seq.obj : error LNK2001: unresolved external symbol _g_static_mutex_free
  1&gt;fluid_settings.obj : error LNK2019: unresolved external symbol _g_log referenced in function _new_fluid_str_setting
  1&gt;fluid_synth.obj : error LNK2001: unresolved external symbol _g_log
  1&gt;fluid_sys.obj : error LNK2001: unresolved external symbol _g_log
  1&gt;fluid_tuning.obj : error LNK2001: unresolved external symbol _g_log
  1&gt;fluid_event_queue.obj : error LNK2001: unresolved external symbol _g_log
  1&gt;fluid_filerenderer.obj : error LNK2001: unresolved external symbol _g_log
  1&gt;fluid_hash.obj : error LNK2001: unresolved external symbol _g_log
  1&gt;fluid_midi_router.obj : error LNK2001: unresolved external symbol _g_log
  1&gt;fluid_hash.obj : error LNK2019: unresolved external symbol _g_atomic_int_exchange_and_add referenced in function _fluid_hashtable_unref
  1&gt;fluid_settings.obj : error LNK2019: unresolved external symbol _g_static_rec_mutex_free referenced in function _delete_fluid_settings
  1&gt;fluid_synth.obj : error LNK2001: unresolved external symbol _g_static_rec_mutex_free
  1&gt;fluid_settings.obj : error LNK2019: unresolved external symbol _g_static_rec_mutex_unlock referenced in function _fluid_settings_get_type
  1&gt;fluid_synth.obj : error LNK2001: unresolved external symbol _g_static_rec_mutex_unlock
  1&gt;fluid_settings.obj : error LNK2019: unresolved external symbol _g_static_rec_mutex_lock referenced in function _fluid_settings_get_type
  1&gt;fluid_synth.obj : error LNK2001: unresolved external symbol _g_static_rec_mutex_lock
  1&gt;fluid_settings.obj : error LNK2019: unresolved external symbol _g_static_rec_mutex_init referenced in function _new_fluid_settings
  1&gt;fluid_synth.obj : error LNK2001: unresolved external symbol _g_static_rec_mutex_init
  1&gt;fluid_synth.obj : error LNK2019: unresolved external symbol _g_static_private_free referenced in function _delete_fluid_synth
  1&gt;fluid_synth.obj : error LNK2019: unresolved external symbol _g_thread_self referenced in function _fluid_synth_alloc_voice
  1&gt;fluid_synth.obj : error LNK2019: unresolved external symbol _g_static_private_set referenced in function _fluid_synth_tuning_iteration_start
  1&gt;fluid_synth.obj : error LNK2019: unresolved external symbol _g_static_private_get referenced in function _fluid_synth_tuning_iteration_next
  1&gt;fluid_synth.obj : error LNK2019: unresolved external symbol _g_atomic_pointer_compare_and_exchange referenced in function _fluid_synth_get_event_queue
  1&gt;fluid_synth.obj : error LNK2019: unresolved external symbol _g_static_private_init referenced in function _new_fluid_synth
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol _g_get_current_time referenced in function _fluid_curtime
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol _g_clear_error referenced in function _new_fluid_thread
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol _g_thread_create_full referenced in function _new_fluid_thread
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol _g_thread_join referenced in function _fluid_thread_join
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol _g_usleep referenced in function _fluid_timer_run
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__recv@16 referenced in function _fluid_istream_gets
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__send@16 referenced in function _fluid_ostream_printf
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__closesocket@4 referenced in function _fluid_socket_close
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__WSAGetLastError@0 referenced in function _fluid_server_socket_run
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__inet_ntoa@4 referenced in function _fluid_server_socket_run
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__accept@12 referenced in function _fluid_server_socket_run
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__listen@8 referenced in function _new_fluid_server_socket
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__bind@12 referenced in function _new_fluid_server_socket
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__htonl@4 referenced in function _new_fluid_server_socket
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__htons@4 referenced in function _new_fluid_server_socket
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__WSACleanup@0 referenced in function _new_fluid_server_socket
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__socket@12 referenced in function _new_fluid_server_socket
  1&gt;fluid_sys.obj : error LNK2019: unresolved external symbol __imp__WSAStartup@8 referenced in function _new_fluid_server_socket
  1&gt;../fluidsynth.dll : fatal error LNK1120: 38 unresolved externals
  3&gt;------ Build started: Project: fluidsynth, Configuration: Release Win32 ------
  2&gt;  fluid_aufile.c
  3&gt;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&gt;  fluid_chan.c
  2&gt;  fluid_chorus.c
  3&gt;  fluidsynth.vcxproj -&gt; C:\Users\Wildfire\Desktop\fluidsynth-1.1.1\winbuild\fluidsynth\.\Release\fluidsynth.exe
  2&gt;  fluid_cmd.c
  2&gt;  fluid_conv.c
  2&gt;  fluid_defsfont.c
  2&gt;  fluid_dll.c
  2&gt;  fluid_dsound.c
  2&gt;  fluid_dsp_float.c
  2&gt;  fluid_event.c
  2&gt;  fluid_event_queue.c
  2&gt;  fluid_filerenderer.c
  2&gt;  fluid_gen.c
  2&gt;  fluid_hash.c
  2&gt;  fluid_list.c
  2&gt;  fluid_mdriver.c
  2&gt;  fluid_midi.c
  2&gt;  fluid_midi_router.c
  2&gt;  fluid_mod.c
  2&gt;  Generating Code...
  2&gt;  Compiling...
  2&gt;  fluid_ramsfont.c
  2&gt;  fluid_rev.c
  2&gt;  fluid_seq.c
  2&gt;  fluid_seqbind.c
  2&gt;  fluid_settings.c
  2&gt;  fluid_synth.c
  2&gt;  fluid_sys.c
  2&gt;  fluid_tuning.c
  2&gt;  fluid_voice.c
  2&gt;  fluid_winmidi.c
  2&gt;  Generating Code...
  2&gt;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&gt;  fluidsynth_lib.vcxproj -&gt; 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 ==========
  </code></pre>