# Compiling problem updating from ex to studio api

**URL:** <https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479>\
**Category:** FMOD Studio\
**Created:** [May 22, 2014, 11:21am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479 "2014-05-22T11:21:07Z")\
**Posts on this page:** 18\
**Page:** 1

<div class="post-metadata">

**Author:** ![Keitel1](https://avatars.discourse-cdn.com/v4/letter/k/3da27b/32.png) [@Keitel1](https://qa.fmod.com/u/Keitel1)\
**Post date:** [May 22, 2014, 11:21am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/1 "2014-05-22T11:21:07Z")

</div>

I have updated a project from fmod ex to fmod studio low level api, but when I now compile in debug mode, I get a lot of syntax errors for the fmod\_dsp.h file and the fmod.h file. I am programming in C in Visual C++ 2010 Express and have copied the fmod\_vc.lib file and all the header files belonging to the low level api to the project directory and linked the library file to the project. I have also copied the fmod.dll to the working (Debug) directory, and included the fmod.h and fmod\_errors.h in the program file. And now I have run out of ideas of how to resolve this. Could anyone give me a hint?

Thanks in advance.

Keitel

---

<div class="post-metadata">

**Author:** ![graeme](https://avatars.discourse-cdn.com/v4/letter/g/50afbb/32.png) [@graeme](https://qa.fmod.com/u/graeme)\
**Post date:** [July 4, 2014, 7:25am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/2 "2014-07-04T07:25:21Z")

</div>

That’s good news! Thanks for the letting us know.

---

<div class="post-metadata">

**Author:** ![Keitel1](https://avatars.discourse-cdn.com/v4/letter/k/3da27b/32.png) [@Keitel1](https://qa.fmod.com/u/Keitel1)\
**Post date:** [June 23, 2014, 1:15pm UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/3 "2014-06-23T13:15:26Z")

</div>

Hi again,

I recreated the whole project and then it worked. All the compiler errors went away. I have no idea why, but I don’t think it matters. I therefore consider the case solved.

Thank you for your assitance.

Best regards  
Keitel

---

<div class="post-metadata">

**Author:** ![Keitel1](https://avatars.discourse-cdn.com/v4/letter/k/3da27b/32.png) [@Keitel1](https://qa.fmod.com/u/Keitel1)\
**Post date:** [June 15, 2014, 6:03pm UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/4 "2014-06-15T18:03:33Z")

</div>

Hi again,

I updated to version 1.04, but I still get the same list of errors as above.

Keitel

---

<div class="post-metadata">

**Author:** ![Keitel1](https://avatars.discourse-cdn.com/v4/letter/k/3da27b/32.png) [@Keitel1](https://qa.fmod.com/u/Keitel1)\
**Post date:** [June 16, 2014, 9:55am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/5 "2014-06-16T09:55:20Z")

</div>

But I have not made any changes to the project or program that worked using Fmodex apart from changing the syntax of the commands that are different in Fmodex. I use the following libraries:  
fmod\_vc.lib  
DiracLE.lib  
MiniAiffx32.lib

Keitel

---

<div class="post-metadata">

**Author:** ![mathew](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/mathew/32/431_2.png) [@mathew](https://qa.fmod.com/u/mathew)\
**Post date:** [May 26, 2014, 11:12am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/6 "2014-05-26T11:12:54Z")

</div>

There are some API changes between FMOD 4 and FMOD 5, have you taken a look at the migration guide in the documentation CHM?

If you have specific syntax errors you’re having trouble with could you post them here so we can help?

---

<div class="post-metadata">

**Author:** ![Keitel1](https://avatars.discourse-cdn.com/v4/letter/k/3da27b/32.png) [@Keitel1](https://qa.fmod.com/u/Keitel1)\
**Post date:** [May 27, 2014, 12:30pm UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/7 "2014-05-27T12:30:03Z")

</div>

I have read the article “Transitioning between FMOD Ex and FMOD Studio” if that is what you are referring to. But I still think I have set everything correctly. I give the list of error messages I got:

1\>------ Build started: Project: DhruvaNada, Configuration: Debug Win32 ------  
1\> main.c  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(85): error C2146: syntax error : missing ‘)’ before identifier ‘inputsidle’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(85): error C2081: ‘bool’ : name in formal parameter list illegal  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(85): error C2061: syntax error : identifier ‘inputsidle’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(85): error C2059: syntax error : ‘;’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(85): error C2059: syntax error : ‘,’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(85): error C2059: syntax error : ‘)’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(86): error C2146: syntax error : missing ‘)’ before identifier ‘inputsidle’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(86): error C2081: ‘bool’ : name in formal parameter list illegal  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(86): error C2061: syntax error : identifier ‘inputsidle’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(86): error C2059: syntax error : ‘;’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(86): error C2059: syntax error : ‘,’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(86): error C2059: syntax error : ‘)’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(89): error C2146: syntax error : missing ‘)’ before identifier ‘value’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(89): error C2081: ‘bool’ : name in formal parameter list illegal  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(89): error C2061: syntax error : identifier ‘value’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(89): error C2059: syntax error : ‘;’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(89): error C2059: syntax error : ‘)’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(93): error C2143: syntax error : missing ‘)’ before ‘_’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(93): error C2081: ‘bool’ : name in formal parameter list illegal  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(93): error C2143: syntax error : missing ‘{’ before '_’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(93): error C2059: syntax error : ‘type’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(93): error C2059: syntax error : ‘)’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(278): error C2061: syntax error : identifier ‘bool’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(280): error C2059: syntax error : ‘}’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(302): error C2016: C requires that a struct or union has at least one member  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(302): error C2061: syntax error : identifier ‘bool’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(304): error C2059: syntax error : ‘}’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(367): error C2061: syntax error : identifier ‘FMOD\_DSP\_PARAMETER\_DESC\_INT’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(368): error C2061: syntax error : identifier ‘booldesc’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(368): error C2059: syntax error : ‘;’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(370): error C2059: syntax error : ‘}’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(371): error C2059: syntax error : ‘}’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(464): error C2016: C requires that a struct or union has at least one member  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(464): error C2061: syntax error : identifier ‘bool’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(465): error C2059: syntax error : ‘}’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(588): error C2061: syntax error : identifier ‘FMOD\_DSP\_PROCESS\_CALLBACK’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(592): error C2143: syntax error : missing ‘{’ before ‘_’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(595): error C2061: syntax error : identifier ‘setparameterbool’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(595): error C2059: syntax error : ‘;’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(599): error C2061: syntax error : identifier ‘getparameterbool’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(599): error C2059: syntax error : ‘;’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(601): error C2061: syntax error : identifier ‘shouldiprocess’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(601): error C2059: syntax error : ‘;’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_dsp.h(603): error C2059: syntax error : ‘}’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(84): error C2143: syntax error : missing ‘)’ before '_’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(84): error C2143: syntax error : missing ‘{’ before ‘_’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(84): error C2059: syntax error : ‘)’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(86): error C2143: syntax error : missing ‘)’ before '_’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(86): error C2143: syntax error : missing ‘{’ before ‘_’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(86): error C2040: ‘description’ : ‘int ’ differs in levels of indirection from ‘int \*\*’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(86): error C2059: syntax error : ‘type’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(86): error C2059: syntax error : ‘)’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(131): error C2143: syntax error : missing ‘)’ before '’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(131): error C2143: syntax error : missing ‘{’ before '_’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(131): error C2040: ‘description’ : ‘int _’ differs in levels of indirection from ‘int \*\*’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(131): error C2371: ‘FMOD\_DSP’ : redefinition; different basic types  
1\> c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod\_common.h(75) : see declaration of ‘FMOD\_DSP’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(131): error C2143: syntax error : missing ‘;’ before '_’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(131): error C2059: syntax error : ‘)’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(599): error C2143: syntax error : missing ‘)’ before ‘_’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(599): error C2081: ‘FMOD\_DSP\_PARAMETER\_DESC’ : name in formal parameter list illegal  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(599): error C2143: syntax error : missing ‘{’ before '_’  
1\>c:\users\ketil\documents\visual studio 2010\projects\dhruvanada\dhruvanada\fmod.h(599): error C2059: syntax error : ‘)’

Keitel

---

<div class="post-metadata">

**Author:** ![graeme](https://avatars.discourse-cdn.com/v4/letter/g/50afbb/32.png) [@graeme](https://qa.fmod.com/u/graeme)\
**Post date:** [May 28, 2014, 4:26am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/8 "2014-05-28T04:26:36Z")

</div>

Hi Keitel,

Looking at line 85 of fmod\_dsp.h, it appears the compiler is falling over the “bool inputsidle” parameter declaration, specifically it does not recognize “bool” as a builtin type. I guess you are compiling as C, rather than C++, right? That would certainly explain it.

It is true that fmod\_dsp.h is one of the common FMOD headers and is supposed to be compatible with both C and C++. Unfortunately, a couple of “bool” declarations slipped through our screening process. This issue has been addressed in the upcoming 1.4 release, with “bool” replaced with FMOD\_BOOL. But unfortunately we can not make the same fix to version 1.03.xx because it would break binary compatibility for many users.

If you can, the easiest workaround is to compile as C++ for now. The other option, if that is not possible, is to comment out the #include “fmod\_dsp.h” statement from the bottom of fmod\_common.h. Obviously, that will only work as long as you don’t use the DSP interface. Any DSP related source files would still need to be compiled as C++.

Hopefully, that will be enough to get you going until 1.4 comes out and the problem goes away. Barring any unforeseen events, our plan is to release 1.4 in the second week of June.

Cheers,  
Graeme.

---

<div class="post-metadata">

**Author:** ![Keitel1](https://avatars.discourse-cdn.com/v4/letter/k/3da27b/32.png) [@Keitel1](https://qa.fmod.com/u/Keitel1)\
**Post date:** [May 28, 2014, 7:14pm UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/9 "2014-05-28T19:14:53Z")

</div>

Hi,

Thank you for your clarification. I’ve tried both the methods you suggested, but some problems came up: When keeping the program in C and commenting out the #include “fmod\_dsp.h” at the end of fmod\_common.h, I still got errors for the fmod.h file. When I converted to C++, I got syntax errors in the header file for the Dirac sound system, dirac.h, which I also need to use.

Keitel

---

<div class="post-metadata">

**Author:** ![graeme](https://avatars.discourse-cdn.com/v4/letter/g/50afbb/32.png) [@graeme](https://qa.fmod.com/u/graeme)\
**Post date:** [June 2, 2014, 7:55am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/10 "2014-06-02T07:55:09Z")

</div>

Ah, I see why commenting out #include “fmod\_dsp.h” didn’t work. It also defines some types that are required by “fmod.h” itself.

Okay then, if you really can’t compile as C++, I do have a little hack you can try…

```auto
#define bool unsigned char
#include "fmod_studio.h"
#undef bool
```

Yes, it’s pretty evil, but it it works!

Other options:  
[list=1]  
[_] Contact Dirac support and see if they can fix their header so it compiles under C++.[/_Ⓜ1gp7lkrt]  
[_] Can you separate the code that includes fmod.h and dirac.h? If so, compile the source that includes fmod.h as C++, and the one that includes dirac.h as C.[/_Ⓜ1gp7lkrt][/list:o:1gp7lkrt]

---

<div class="post-metadata">

**Author:** ![Keitel1](https://avatars.discourse-cdn.com/v4/letter/k/3da27b/32.png) [@Keitel1](https://qa.fmod.com/u/Keitel1)\
**Post date:** [June 2, 2014, 12:12pm UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/11 "2014-06-02T12:12:43Z")

</div>

I tried to put in your suggestion on top of the include list, but now I get a lot of the following:

error LNK2019: unresolved external symbol \_\_

Keitel

---

<div class="post-metadata">

**Author:** ![graeme](https://avatars.discourse-cdn.com/v4/letter/g/50afbb/32.png) [@graeme](https://qa.fmod.com/u/graeme)\
**Post date:** [June 3, 2014, 1:15am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/12 "2014-06-03T01:15:03Z")

</div>

Don’t put it at the top of your whole include list! Just around #include “fmod\_studio.h”, as I specified above.

---

<div class="post-metadata">

**Author:** ![Keitel1](https://avatars.discourse-cdn.com/v4/letter/k/3da27b/32.png) [@Keitel1](https://qa.fmod.com/u/Keitel1)\
**Post date:** [June 3, 2014, 10:47am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/13 "2014-06-03T10:47:16Z")

</div>

I’ve placed it like this:

```auto
#include <windows.h>
#include "winuser.h"
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#include <process.h>
#include <math.h>
#include "fmod.h"
#define bool unsigned char
#include "fmod_studio.h"
#undef bool
#include "fmod_errors.h"
#include "MiniAiff.h"
#include "dirac.h"
#include "Winresrc.h"
#include "resource.h"
#include "dos.h"
#include "scales.h"
 
#define FMOD_INIT_NORMAL 0x00000000

```

Then I got rid of the error LNK2019: unresolved external symbol, but I still get syntax errors on the fmod\_dsp.h, fmod.h and fmod\_studio.h. By the way, do I actaully need to include the fmod\_studio.h if I only am going to use the low level functions?

Keitel

---

<div class="post-metadata">

**Author:** ![graeme](https://avatars.discourse-cdn.com/v4/letter/g/50afbb/32.png) [@graeme](https://qa.fmod.com/u/graeme)\
**Post date:** [June 4, 2014, 5:57am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/14 "2014-06-04T05:57:59Z")

</div>

Okay, if you are only going to use the low level API then you just need to #include “fmod.h”, like so…

```auto
#define bool unsigned char
#include "fmod.h"
#undef bool
```

I think the reason you were still getting syntax errors is because you put the hack around “fmod\_studio.h”, but not around “fmod.h”. I didn’t realise you were trying to include both headers (“fmod\_studio.h” includes “fmod.h” internally).

Anyway, please try removing “fmod\_studio.h” from your include list, and put the above hack around “fmod.h”.

---

<div class="post-metadata">

**Author:** ![Keitel1](https://avatars.discourse-cdn.com/v4/letter/k/3da27b/32.png) [@Keitel1](https://qa.fmod.com/u/Keitel1)\
**Post date:** [June 4, 2014, 6:47pm UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/15 "2014-06-04T18:47:54Z")

</div>

I did as you said:

```auto
#define bool unsigned char
#include "fmod.h"
#undef bool

```

And excluded the fmod\_studio.h. But now I got back the long list of error LNK2019: unresolved external symbol.

Keitel

---

<div class="post-metadata">

**Author:** ![graeme](https://avatars.discourse-cdn.com/v4/letter/g/50afbb/32.png) [@graeme](https://qa.fmod.com/u/graeme)\
**Post date:** [June 5, 2014, 12:53am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/16 "2014-06-05T00:53:26Z")

</div>

Just to clarify, you get a whole bunch of “error LNK2019: unresolved external symbol \_\_”? Or something else? Would you mind posting the linker output?

---

<div class="post-metadata">

**Author:** ![Keitel1](https://avatars.discourse-cdn.com/v4/letter/k/3da27b/32.png) [@Keitel1](https://qa.fmod.com/u/Keitel1)\
**Post date:** [June 5, 2014, 8:34pm UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/17 "2014-06-05T20:34:26Z")

</div>

Here is the complete list of error messages I get:

1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_DispatchMessageW@4 referenced in function \_WinMain@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_TranslateMessage@4 referenced in function \_WinMain@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_GetMessageW@16 referenced in function \_WinMain@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_ShowWindow@8 referenced in function \_WinMain@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_CreateWindowExW@48 referenced in function \_WinMain@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_GetSystemMetrics@4 referenced in function \_WinMain@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_RegisterClassW@4 referenced in function \_WinMain@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_LoadCursorW@8 referenced in function \_WinMain@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_CreateSolidBrush@4 referenced in function \_WinMain@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_free referenced in function \_timestretch  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_floor referenced in function \_timestretch  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_exit referenced in function \_timestretch  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_printf referenced in function \_timestretch  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_memmove referenced in function \_timestretch  
1\>main.obj : error LNK2019: unresolved external symbol \_memset referenced in function \_timestretch  
1\>main.obj : error LNK2001: unresolved external symbol \_memset  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2001: unresolved external symbol \_memset  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_malloc referenced in function \_timestretch  
1\>main.obj : error LNK2019: unresolved external symbol \_strcpy referenced in function \_timestretch  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_\_wfopen referenced in function \_timestretch  
1\>main.obj : error LNK2019: unresolved external symbol \_strlen referenced in function \_timestretch  
1\>main.obj : error LNK2001: unresolved external symbol \_\_fltused  
1\>DiracLE.lib(Dirac.obj) : error LNK2001: unresolved external symbol \_\_fltused  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2001: unresolved external symbol \_\_fltused  
1\>main.obj : error LNK2019: unresolved external symbol \_\_ftol2\_sse referenced in function \_timestretch  
1\>main.obj : error LNK2019: unresolved external symbol \_exp referenced in function \_scaleselect  
1\>main.obj : error LNK2019: unresolved external symbol \_log referenced in function \_scaleselect  
1\>main.obj : error LNK2019: unresolved external symbol \_\_\_security\_cookie referenced in function \_scaleselect  
1\>main.obj : error LNK2019: unresolved external symbol @\_\_security\_check\_cookie@4 referenced in function \_scaleselect  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_DefWindowProcW@16 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_PostQuitMessage@4 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_GetWindowLongW@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_KillTimer@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_InvalidateRect@12 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_SetCursor@4 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_SetFocus@4 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_ReleaseDC@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_GetDC@4 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_GetKeyState@4 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_DeleteObject@4 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_EndPaint@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_Ellipse@20 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_CreateFontW@56 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_TextOutW@20 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_SetTextColor@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_SetTextAlign@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_RoundRect@28 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_LineTo@12 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_MoveToEx@16 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_Rectangle@20 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_GetStockObject@4 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_DeleteDC@4 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_BitBlt@36 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_SelectObject@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_CreateCompatibleDC@4 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_BeginPaint@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_CreateHatchBrush@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_CreatePen@12 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_SetBkMode@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_MoveWindow@24 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_SetTimer@16 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_GetObjectW@12 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_LoadBitmapW@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_SetScrollPos@16 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_SetScrollRange@20 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_SetWindowTextW@8 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_SendMessageW@16 referenced in function \_WndProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_\_vswprintf\_c\_l referenced in function \_swprintf  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_DestroyWindow@4 referenced in function \_DialogProc@16  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_RegisterClassExW@4 referenced in function \_RegisterDialogClass  
1\>main.obj : error LNK2019: unresolved external symbol \_\_imp\_\_GetSysColorBrush@4 referenced in function \_RegisterDialogClass  
1\>LINK : error LNK2001: unresolved external symbol \_WinMainCRTStartup  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_srand referenced in function \_$E2  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_time referenced in function \_$E2  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol “void \* \_\_cdecl operator new(unsigned int)” (??2@YAPAXI@Z) referenced in function \_DiracFxCreate  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2001: unresolved external symbol “void \* \_\_cdecl operator new(unsigned int)” (??2@YAPAXI@Z)  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_printf referenced in function \_DiracFxCreate  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_rand referenced in function “public: \_\_thiscall \_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7::\_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7(int,float)” (??0\_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7@@QAE@HM@Z)  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_floor referenced in function “public: \_\_thiscall \_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7::\_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7(int,float)” (??0\_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7@@QAE@HM@Z)  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_\_CIpow referenced in function “public: \_\_thiscall \_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7::\_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7(int,float)” (??0\_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7@@QAE@HM@Z)  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2001: unresolved external symbol \_\_CIpow  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_\_ftol referenced in function “public: \_\_thiscall \_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7::\_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7(int,float)” (??0\_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7@@QAE@HM@Z)  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_free referenced in function \_DiracFxDestroy  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2001: unresolved external symbol \_free  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol “void \_\_cdecl operator delete(void \*)” (??3@YAXPAX@Z) referenced in function \_DiracFxDestroy  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2001: unresolved external symbol “void \_\_cdecl operator delete(void \*)” (??3@YAXPAX@Z)  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_malloc referenced in function \_DiracFxProcessFloat  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2001: unresolved external symbol \_malloc  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_qsort referenced in function “public: void \_\_thiscall \_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7::\_sLe5A2XsmopLER7YYV1G9k5AjRlUoHTTd(short \*,short \*,long)” (?\_sLe5A2XsmopLER7YYV1G9k5AjRlUoHTTd@\_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7@@QAEXPAF0J@Z)  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_memmove referenced in function “public: void \_\_thiscall \_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7::\_sLe5A2XsmopLER7YYV1G9k5AjRlUoHTTd(short \*,short \*,long)” (?\_sLe5A2XsmopLER7YYV1G9k5AjRlUoHTTd@\_sE7w6MawROVJWjnw0GZwlUIaGVNYF5Ud7@@QAEXPAF0J@Z)  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_exit referenced in function “private: long \_\_thiscall \_sTWGnVetUIs2NnOgT0HKkJpqSxXpxYaL7::init(void)” (?init@\_sTWGnVetUIs2NnOgT0HKkJpqSxXpxYaL7@@AAEJXZ)  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_\_imp\_\_GetSystemTimeAsFileTime@4 referenced in function “public: long \_\_thiscall \_sPHS6L5fVSuf57HLvreTPGBNsSofDnWGH::\_sPjIPoayo6XcSHP4qd9BhC82soP0xMIzu(float \* \*,long)” (?\_sPjIPoayo6XcSHP4qd9BhC82soP0xMIzu@\_sPHS6L5fVSuf57HLvreTPGBNsSofDnWGH@@QAEJPAPAMJ@Z)  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_\_aullrem referenced in function “public: long \_\_thiscall \_sPHS6L5fVSuf57HLvreTPGBNsSofDnWGH::\_sPjIPoayo6XcSHP4qd9BhC82soP0xMIzu(float \* \*,long)” (?\_sPjIPoayo6XcSHP4qd9BhC82soP0xMIzu@\_sPHS6L5fVSuf57HLvreTPGBNsSofDnWGH@@QAEJPAPAMJ@Z)  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_\_aulldiv referenced in function “public: long \_\_thiscall \_sPHS6L5fVSuf57HLvreTPGBNsSofDnWGH::\_sPjIPoayo6XcSHP4qd9BhC82soP0xMIzu(float \* \*,long)” (?\_sPjIPoayo6XcSHP4qd9BhC82soP0xMIzu@\_sPHS6L5fVSuf57HLvreTPGBNsSofDnWGH@@QAEJPAPAMJ@Z)  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_fclose referenced in function “void \_\_cdecl \_sLp7EkPPUoxO1HDLmTwNv5UcFgICv4gUW(void)” (?\_sLp7EkPPUoxO1HDLmTwNv5UcFgICv4gUW@@YAXXZ)  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2001: unresolved external symbol \_fclose  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_fopen referenced in function “void \_\_cdecl \_sLp7EkPPUoxO1HDLmTwNv5UcFgICv4gUW(void)” (?\_sLp7EkPPUoxO1HDLmTwNv5UcFgICv4gUW@@YAXXZ)  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2001: unresolved external symbol \_fopen  
1\>DiracLE.lib(Dirac.obj) : error LNK2019: unresolved external symbol \_localtime referenced in function “void \_\_cdecl \_sLp7EkPPUoxO1HDLmTwNv5UcFgICv4gUW(void)” (?\_sLp7EkPPUoxO1HDLmTwNv5UcFgICv4gUW@@YAXXZ)  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2019: unresolved external symbol \_fread referenced in function “int \_\_cdecl GetAppData(struct \_iobuf \*,struct NASsampleInfo \*,unsigned int,int,void \*)” (?GetAppData@@YAHPAU\_iobuf@@PAUNASsampleInfo@@IHPAX@Z)  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2019: unresolved external symbol \_fseek referenced in function “int \_\_cdecl GetAppData(struct \_iobuf \*,struct NASsampleInfo \*,unsigned int,int,void \*)” (?GetAppData@@YAHPAU\_iobuf@@PAUNASsampleInfo@@IHPAX@Z)  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2019: unresolved external symbol \_\_\_libm\_sse2\_pow referenced in function “void \_\_cdecl intToFloat(float \*,unsigned char \*,int,int)” (?intToFloat@@YAXPAMPAEHH@Z)  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2019: unresolved external symbol \_\_\_libm\_sse2\_log referenced in function “void \_\_cdecl double\_to\_ieee\_80(double,unsigned char \*)” (?double\_to\_ieee\_80@@YAXNPAE@Z)  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2019: unresolved external symbol \_fwrite referenced in function “int \_\_cdecl writeAiffHeader(struct \_iobuf \*,unsigned int,int,int,double)” (?writeAiffHeader@@YAHPAU\_iobuf@@IHHN@Z)  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2019: unresolved external symbol \_ftell referenced in function “int \_\_cdecl getAndIdentifyAIFFchunk(struct \_iobuf \*,int \*,struct NASsampleInfo \*)” (?getAndIdentifyAIFFchunk@@YAHPAU\_iobuf@@PAHPAUNASsampleInfo@@@Z)  
1\>MiniAiffx32.lib(miniAIFF.obj) : error LNK2019: unresolved external symbol \_\_chkstk referenced in function \_mAiffReadAppData  
1\>C:\Users\Ketil\documents\visual studio 2010\Projects\DhruvaNada\Debug\DhruvaNada.exe : fatal error LNK1120: 95 unresolved externals  
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Keitel

---

<div class="post-metadata">

**Author:** ![graeme](https://avatars.discourse-cdn.com/v4/letter/g/50afbb/32.png) [@graeme](https://qa.fmod.com/u/graeme)\
**Post date:** [June 16, 2014, 4:02am UTC](https://qa.fmod.com/t/compiling-problem-updating-from-ex-to-studio-api/11479/18 "2014-06-16T04:02:23Z")

</div>

Hi Keitel,

Correct me if I’m wrong, but it doesn’t look like any of those linker errors are related to FMOD.

DispatchMessageW, TranslateMessage, GetMessageW, etc, are Windows API functions, and malloc, free, strlen, etc, are part of the standard C library. Are you sure you are linking with the right libraries?

Cheers,  
Graeme.
