I’ve just set up FlashDevelop so I can have a play with HaxeFlixel. I’m not sure if this is even the right forum to be asking about this problem as there seems to be so many different things I had to install (i.e. haxe, openfl, lime, haxeflixel, flashdevelop, etc…). So I don’t even know where to start looking to solve this error I’m getting.
I am able to compile and run an example project in flash, html5 and neko, but if I try and compile and run it for windows, I get the following error.
C:\HaxeToolkit\haxe\lib\hxcpp\3,2,102\include\hx/Thread.h(15) : fatal error C1083: Cannot open include file: 'windows.h': No such file or directory
I don’t really understand why I’m getting this error as I’m pretty sure I’ve followed all the docs on each website carefully. I’ve also searched around and haven’t found anyone else reporting this problem anywhere so it must not be a common issue and must just be something wrong with my set up. I just did a fresh install of the VC++ Express 2010, but that didn’t help. Where do I even start looking?
Yes, I did try that already. All that does is downloads and installs Visual Studio C++ Express, but doesn’t make any difference. So it seems like FlashDevelop is missing some connection to it. Is there a path or something that needs to be set somewhere that perhaps wasn’t set right by the install?
Out of frustration I went through and uninstalled everything and started again. I followed the steps to the letter in the openfl docs and in the haxeflixel docs, but I’m still getting the same error when trying to compile for Windows. Is there a path somewhere in a config file or registry that I can check as FlashDevelop is obviously not seeing the Visual Studio C++ Express install.
At this point I haven’t even thought about debugging yet. Just trying to get it to compile at least first.
I tried your suggestion and still the same error in the command line.
C:/HaxeToolkit/haxe/lib/hxcpp/3,2,102/src/hx/Date.cpp(6) : fatal error C1083: Cannot open include file: 'windows.h': No such file or directory
Well at least this little test has eliminated FlashDevelop from the equation. So the problem has something to do with openfl or haxe. Which one is actually doing the compiling, is it haxe? Does it have a config file or something like that where the path to the Visual Studio C++ Express install is as I’m guessing that is probably wrong and could be easily fixed if I knew where it is set?
I have the full Visual Studio 2010 and 2013 installed as I use them for other .Net and C++ work. I installed the Visual Studio C++ Express that it asked me to when I ran the “haxelib setup windows” command. Is there a way I can tell which version of VC++ that OpenFL is linking to?
I believe it uses the newest one, does 2013 have Win32 libraries, or only WinRT libraries? (some of them don’t include desktop Win32 headers and libraries by default)
You can force an older one with a define, like this:
The define value will depend on the VC version you want to force