FluidSynth VS2010 build environment OS: WindowsXP SP3 1. Visual Studio Express 2010, from: http://www.microsoft.com/express/Downloads/ (All - Offline Install ISO image file, English) Note: the ISO image contains all VS2010 products, but only MS Visual C is installed. file: VS2010Express1.iso No special options, just the defaults. Don't need Silverlight or any other extras. DirectX SDK is already included. 2. CMake 2.8.2, from: http://www.cmake.org/cmake/resources/software.html http://www.cmake.org/files/v2.8/cmake-2.8.2-win32-x86.exe Let the installer to add CMake to the system path, and create a desktop shortcut icon. 3. glib, from: http://www.gtk.org/download-windows.html files: http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.24/glib_2.24.0-2_win32.zip http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.24/glib-dev_2.24.0-2_win32.zip http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config_0.23-3_win32.zip http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/proxy-libintl-dev_20090911_win32.zip All ZIPs unpacked to C:\freesw Added C:\freesw\bin to the system PATH To verify: Start button -> Command Prompt C:\> pkg-config --list-all gio-2.0 GIO - glib I/O library gmodule-2.0 GModule - Dynamic module loader for GLib glib-2.0 GLib - C Utility Library gmodule-no-export-2.0 GModule - Dynamic module loader for GLib gthread-2.0 GThread - Thread support for GLib gobject-2.0 GObject - GLib Type, Object, Parameter and Signal Library 4. FluidSynth from SVN (this URL gets a .tar.gz snapshot from the repository) http://fluidsynth.svn.sourceforge.net/viewvc/fluidsynth/trunk/fluidsynth/?view=tar Run CMake, openinig the desktop icon shortcut. Select "Visual Studio 10". Select the directory containing FluidSynth sources, and another directory for building. This is the report for the first Configure run: Check for working C compiler using: Visual Studio 10 Check for working C compiler using: Visual Studio 10 -- works Detecting C compiler ABI info Detecting C compiler ABI info - done Checking whether system has ANSI C header files Looking for include files StandardHeadersExist Looking for include files StandardHeadersExist - not found. ANSI C header files - not found Looking for include files HAVE_UNISTD_H Looking for include files HAVE_UNISTD_H - not found. Looking for DIR in sys/stat.h;sys/types.h;dirent.h Looking for DIR in sys/stat.h;sys/types.h;dirent.h - not found. Looking for string.h Looking for string.h - found Looking for stdlib.h Looking for stdlib.h - found Looking for stdio.h Looking for stdio.h - found Looking for math.h Looking for math.h - found Looking for errno.h Looking for errno.h - found Looking for stdarg.h Looking for stdarg.h - found Looking for memory.h Looking for memory.h - found Looking for sys/mman.h Looking for sys/mman.h - not found Looking for sys/types.h Looking for sys/types.h - found Looking for sys/time.h Looking for sys/time.h - not found Looking for sys/stat.h Looking for sys/stat.h - found Looking for sys/ioctl.h Looking for sys/ioctl.h - not found Looking for fcntl.h Looking for fcntl.h - found Looking for sys/socket.h Looking for sys/socket.h - not found Looking for netinet/in.h Looking for netinet/in.h - not found Looking for netinet/tcp.h Looking for netinet/tcp.h - not found Looking for arpa/inet.h Looking for arpa/inet.h - not found Looking for limits.h Looking for limits.h - found Looking for pthread.h Looking for pthread.h - not found Looking for signal.h Looking for signal.h - found Performing Test _have_inline Performing Test _have_inline - Failed Performing Test _have___inline__ Performing Test _have___inline__ - Failed Performing Test _have___inline Performing Test _have___inline - Success Performing Test _have_vla Performing Test _have_vla - Failed Check if the system is big endian Searching 16 bit integer Looking for stdint.h Looking for stdint.h - found Looking for stddef.h Looking for stddef.h - found Check size of unsigned short Check size of unsigned short - done Using unsigned short Check if the system is big endian - little endian Looking for windows.h Looking for windows.h - found Looking for io.h Looking for io.h - found Looking for dsound.h Looking for dsound.h - found Looking for include files HAVE_MMSYSTEM_H Looking for include files HAVE_MMSYSTEM_H - found checking for modules 'glib-2.0>=2.6.5;gthread-2.0>=2.6.5' found glib-2.0, version 2.24.0 found gthread-2.0, version 2.24.0 checking for module 'sndfile>=1.0.0' package 'sndfile>=1.0.0' not found checking for module 'libpulse-simple>=0.9.8' package 'libpulse-simple>=0.9.8' not found checking for module 'alsa>=0.9.1' package 'alsa>=0.9.1' not found checking for module 'portaudio-2.0>=19' package 'portaudio-2.0>=19' not found checking for module 'jack' package 'jack' not found Could NOT find READLINE (missing: READLINE_INCLUDE_DIR READLINE_LIBRARIES) checking for module 'lash-1.0>=0.3' package 'lash-1.0>=0.3' not found checking for module 'dbus-1>=1.0.0' package 'dbus-1>=1.0.0' not found Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) ************************************************************** Summary: libsndfile: no (raw audio file rendering only) D-Bus: no PulseAudio: no JACK: no ALSA: no PortAudio: no OSS: no MidiShare: no CoreAudio: no CoreMIDI: no Windows: yes LADSPA support: no LASH support: no LADCCA support: no OS/2 DART support: no Audio to file driver: yes Readline: no Samples type=float: no (using double) Profiling: no Debug: no Trap on FPE (debug): no Check FPE (debug): no ************************************************************** Configuring done Press "Configure" again, and then "Generate". 5. Compile. Go to the build directory, and double click the file "FluidSynth.sln" Build the solution. This is the build report: ------ Build started: Project: ZERO_CHECK, Configuration: Release Win32 ------ Checking Build System CMake does not need to re-run because C:/Documents and Settings/pedro/My Documents/Visual Studio 2010/Projects/fluidsynth/CMakeFiles/generate.stamp is up-to-date. CMake does not need to re-run because C:/Documents and Settings/pedro/My Documents/Visual Studio 2010/Projects/fluidsynth/src/CMakeFiles/generate.stamp is up-to-date. CMake does not need to re-run because C:/Documents and Settings/pedro/My Documents/Visual Studio 2010/Projects/fluidsynth/include/CMakeFiles/generate.stamp is up-to-date. CMake does not need to re-run because C:/Documents and Settings/pedro/My Documents/Visual Studio 2010/Projects/fluidsynth/include/fluidsynth/CMakeFiles/generate.stamp is up-to-date. CMake does not need to re-run because C:/Documents and Settings/pedro/My Documents/Visual Studio 2010/Projects/fluidsynth/doc/CMakeFiles/generate.stamp is up-to-date. ------ Build started: Project: libfluidsynth, Configuration: Release Win32 ------ Building Custom Rule C:/Projects/fluidsynth-1.1.1/src/CMakeLists.txt CMake does not need to re-run because C:\Documents and Settings\pedro\My Documents\Visual Studio 2010\Projects\fluidsynth\src\CMakeFiles\generate.stamp is up-to-date. fluid_dll.c fluid_dsound.c fluid_winmidi.c fluid_conv.c fluid_hash.c fluid_list.c fluid_ringbuffer.c fluid_settings.c fluid_sys.c fluid_defsfont.c fluid_ramsfont.c fluid_adsr_env.c fluid_chorus.c fluid_iir_filter.c fluid_rvoice.c fluid_rvoice_dsp.c fluid_rvoice_event.c fluid_rvoice_mixer.c fluid_rev.c fluid_chan.c Generating Code... Compiling... fluid_event.c fluid_gen.c fluid_mod.c fluid_synth.c fluid_tuning.c fluid_voice.c fluid_midi.c fluid_midi_router.c fluid_seqbind.c fluid_seq.c fluid_adriver.c fluid_mdriver.c fluid_aufile.c fluid_cmd.c fluid_filerenderer.c Generating Code... Creating library C:/Documents and Settings/pedro/My Documents/Visual Studio 2010/Projects/fluidsynth/src/Release/fluidsynth.lib and object C:/Documents and Settings/pedro/My Documents/Visual Studio 2010/Projects/fluidsynth/src/Release/fluidsynth.exp libfluidsynth.vcxproj -> C:\Documents and Settings\pedro\My Documents\Visual Studio 2010\Projects\fluidsynth\src\Release\libfluidsynth.dll ------ Build started: Project: fluidsynth, Configuration: Release Win32 ------ Building Custom Rule C:/Projects/fluidsynth-1.1.1/src/CMakeLists.txt CMake does not need to re-run because C:\Documents and Settings\pedro\My Documents\Visual Studio 2010\Projects\fluidsynth\src\CMakeFiles\generate.stamp is up-to-date. fluidsynth.c fluidsynth.vcxproj -> C:\Documents and Settings\pedro\My Documents\Visual Studio 2010\Projects\fluidsynth\src\Release\fluidsynth.exe ------ Build started: Project: ALL_BUILD, Configuration: Release Win32 ------ Building Custom Rule C:/Projects/fluidsynth-1.1.1/CMakeLists.txt CMake does not need to re-run because C:\Documents and Settings\pedro\My Documents\Visual Studio 2010\Projects\fluidsynth\CMakeFiles\generate.stamp is up-to-date. ------ Skipped Build: Project: INSTALL, Configuration: Release Win32 ------ Project not selected to build for this solution configuration ========== Build: 4 succeeded, 0 failed, 0 up-to-date, 1 skipped ==========