Error when launching game in Windows

Ok, You can remove obj, but now could You send me Your /lime/_backend/native/NativeApplication.hx file?
Ah, wait these are on git, I’ll check them.

Try rebuilding with haxeflag or haxedef with word “macro”

You can’t define macro, it’s reserved by the compiler for when macros are running.

Hmm… Is there a way of disabling cffi? There is switch in lime hx code with disable_cffi word. Will passing haxedef=“disable-cffi” work?

For the tools yes, you can add the flag -nocffi to the lime command.

1 Like

So compiling with this argument could solve @OP problem…

Btw, sorry for OT, but when is keyword “macro” added?
There is for example from NativeApllication.hx:

	public function setFrameRate (value:Float):Float {
        		#if !macro
        		lime_application_set_frame_rate (handle, value);
        		#end
        		return frameRate = value;
        	}

@ibilon do You know when it is added, or what other flags decide to add it to the defines?

The compiler adds it when running a macro http://haxe.org/manual/macro.html

1 Like

Thank You sir! :slightly_smiling:

Hey, tried -nocffi (cffi was the only thing I could find on github that looked like it had anything to do with “prime” and googling that, I found that flag) a couple of times, customer gets error:
Custom([file_write,stderr])

Hmm… could You add lime.ndll 2.5.3 into your build (with compiling against lime-legacy in version from zip You provided, with -no-cffi flag also)? And could You send your app once again? :slight_smile:
Weird error :confused:

Edit:
I’ve tested Your app on 3 different machines with win7 and it worked, and I think that maybe problem lay in Win10? Maybe for tablets (I assume that game does not run on tablet with win10 only…?) You should compile for win-rt, not for regular windows?

Oh yeah, WinRT is not supported

I think the best idea would be to compile flixel demos and check if they work on @01010111 client’s machines. Maybe a part of them would be good and part would crash. Comparing differences in sources could point which part of code is creating error. If all works, then game sources have something that creates errors. If none works, probably WinRT would be the case.

@01010111 Could You check if this will work?

Maybe this link would be helpful in testing the issue:


I don’t have win10 (neither tablet :confused:) so I cannot test if there is a possibility to swap mode on tablet into desktop. If yes, maybe it will solve problem with tablet support in this case.

Customer gets the error:
Custom([file_write,stderr])

Also, it doesn’t work on Windows 7 or 10 machines.

When I get home from work I will try the flixel demos, but afaik I’m the only person using flixel that is getting this error. I’m thinking it’s something in my code, but I’m just unable to pinpoint what it is.

Unfortunately I’m not able to compile Your game on my machine to test it (lack of various flixel files even from dev flixel version).
Weirdly Your app from first link with lime added “works” on Wine in Kubuntu 14.04 - screen is black, but music is playing, and if keys are pressed, fxs from game are heard.

This message means there was an error when calling the function file_write() with the parameter stderr.

In other words, the application was not able to open stderr for writing. There was probably an underlying error, but that was lost.

@01010111 Solution may be in this topic:

Yeah, I tried searching for lime.app.Application, but none of my files (or flixel’s) are importing it. The only thing I’m using in my code that requires any Lime imports is lime.system.System (for exiting the program) - I’m having someone test that now, but I’m going to double check my imports to make sure nothing was accidentally imported.

The Lime API is not available in legacy, so even lime.system.System may be the cause here

I just made a change to try and force the “lime” package to be excluded when compiling with legacy. For some reason, this doesn’t occur as strictly with Flixel (I’m still trying to understand why)

Sys.exit (a hard quit) is the right way to do it on legacy desktop, I believe. lime.system.System is not compatible with legacy, but does a nice shutdown with shutdown events dispatched, etc before closing down the audio subsystem, etc, etc