HELP - Fluidsynth requires dll

Ask for help with ScummVM problems

Moderator: ScummVM Team

Post Reply
User avatar
azazel_1125
Posts: 17
Joined: Sun Aug 30, 2009 9:38 pm

HELP - Fluidsynth requires dll

Post by azazel_1125 » Wed Oct 14, 2009 1:58 pm

every time I compile & run ScummVM it says it requires fluidsynth.dll

How do i include this in the build?

I don't really know anything about all this, just learning as I go so any help would be greatly appreciated.

Thanks in advance.

EDIT- Compiling on windows 7 using latest svn & fluidsynth 1.0.0 as i cant get any newer ones to compile and i read on these forums its the only one that will attach.
Last edited by azazel_1125 on Wed Oct 14, 2009 2:15 pm, edited 1 time in total.

mac_es
Posts: 104
Joined: Mon Oct 31, 2005 9:37 am

Post by mac_es » Wed Oct 14, 2009 2:14 pm

You should compile fluidwynth as static library.

In Win32 the compilation is allwyas as dynamic library, so you will need to modify the source.

There is bug report/patch where it show how to compile. But basically is to remove the win32 plugin defs

User avatar
azazel_1125
Posts: 17
Joined: Sun Aug 30, 2009 9:38 pm

Post by azazel_1125 » Wed Oct 14, 2009 2:22 pm

How is this done and can SDL be compiled in the same way ie static

User avatar
LordHoto
ScummVM Developer
Posts: 1030
Joined: Sun Oct 30, 2005 3:58 pm
Location: Germany

Post by LordHoto » Wed Oct 14, 2009 4:29 pm

That highly depends on what you use to compile the libraries / ScummVM: i.e. usually MinGW or MSVC on Windows.

User avatar
azazel_1125
Posts: 17
Joined: Sun Aug 30, 2009 9:38 pm

Post by azazel_1125 » Wed Oct 14, 2009 5:30 pm

I have been using MSVC express

when I try to compile fluidsynth myself I get all kinds of errors
mostly - missing file somefile.h
I downloaded it from fluidsynth site and tried many different versions with same results

Just used fludsynth-1.0.0 because it was pre-compiled and thought it would be easier.

What version is used in the pre-built scummvm?

mac_es
Posts: 104
Joined: Mon Oct 31, 2005 9:37 am

Post by mac_es » Thu Oct 15, 2009 2:11 pm

I can only help whith MINGW build...

AFAIK you can't compile SDL in a static library...

User avatar
azazel_1125
Posts: 17
Joined: Sun Aug 30, 2009 9:38 pm

Post by azazel_1125 » Thu Oct 15, 2009 4:05 pm

I'll go for that MinGW it is

But you might have to spell it out for me

I already have a copy of it installed, I tried compiling it and still got a dll & exe

so if you could take me through it that would be much appreciated

User avatar
azazel_1125
Posts: 17
Joined: Sun Aug 30, 2009 9:38 pm

Post by azazel_1125 » Sun Oct 18, 2009 11:00 am

OK compiled it as static library in MSVC by going to Fuidsynth_dll properties > Configuration Properties > General > Configuration type > and changed to static.

But when I build ScummVM it still requires fluidsynth.dll.

what do I need to change in ScummVM to make it use this new static library?

User avatar
md5
ScummVM Developer
Posts: 2258
Joined: Thu Nov 03, 2005 9:31 pm
Location: Athens, Greece

Post by md5 » Sun Oct 18, 2009 4:28 pm

Er question... why do you want to build ScummVM with Fluidsynth again? It's not a needed library

There are extensive instructions on how to compile ScummVM under MSVC here:
http://wiki.scummvm.org/index.php/Compi ... ual_Studio

User avatar
azazel_1125
Posts: 17
Joined: Sun Aug 30, 2009 9:38 pm

Post by azazel_1125 » Sun Oct 18, 2009 8:35 pm

I have thoroughly read that doc and that is the only reason I've got as far as I have.

I wanted to compile it in because I liked how it made MI2 & DOTT sound among others.

I've come this far compiling the SVN build and now that I've started it I feel like it's beating me. I won't rest until I'm able to do it.

This is the first time I've tried something like this and I don't want it to be the last.

Any help would be appreciated.

mac_es
Posts: 104
Joined: Mon Oct 31, 2005 9:37 am

Post by mac_es » Mon Oct 19, 2009 2:35 pm

you will need to modify fluidsynth.h (in include folder)

Code: Select all


#if defined(WIN32)
#if defined(FLUIDSYNTH_DLL_EXPORTS)
#define FLUIDSYNTH_API __declspec(dllexport)
#elif defined(FLUIDSYNTH_NOT_A_DLL)
#define FLUIDSYNTH_API 
#else
#define FLUIDSYNTH_API __declspec(dllimport)
#endif

#elif defined(MACOS9)
#define FLUIDSYNTH_API __declspec(export)

#else
#define FLUIDSYNTH_API
#endif
to

Code: Select all

#define FLUIDSYNTH_API
Then compile as static libray

Post Reply