总之,我认为我的问题是:
如何强制hxcpp为Flash 8编译haxe代码?
这是我在的地方。我是haxe的新手,我正试图从这里获取样本:
http://tilestudio.sourceforge.net/flash/Demo.html
使用hxcpp进行编译,在我的测试中看看haxe编译的应用程序如何在iphone上运行。
我已经有其他样本可以正常编译并将它们放在iphone上,但是当我编译这个样本时,它会抱怨像:
Demo.hx:32: characters 17-53 : Class not found : flash.MovieClip
Demo.hx:42: characters 20-36 : Class not found : flash.Key
Demo.hx:44: characters 43-60 : Class not found : flash.Stage
正如我所提到的,这可以使用以下hxml文件(flash.hxml)进行编译:
-swf Demo.swf
-swf-lib DemoRes.swf
-main Demo.hx
-swf-header 480:320:100:808080
但是如上所述使用此(cpp.hxml)失败:
-main Demo.hx
-lib nme
-lib neash
-swf-lib DemoRes.swf
--remap neko:cpp
--remap flash:neash
-cpp cpp
所以我认为问题是hxcpp针对的是Flash版本9 swf,并且haxe代码针对的是Flash 8.我尝试使用“-swf-version 8”强制它接受Flash 8语法但是它不起作用(给出相同的错误)。
答案 0 :(得分:1)
虽然Neash非常完整,但我不确定它是否确实映射了100%的Flash API。那说你肯定有-swf-lib的问题,这对Neash不起作用;因为没有可能在其他平台上嵌入swf文件而不是flash。您必须以不同方式管理资产。 也许在不太遥远的未来,甚至可以嵌入甚至swf资源,但首先有人必须编写一个很好的反编译器,将它们转换为预定的目标。
答案 1 :(得分:1)
我问Hugh,Haxe的hxcpp编译器部分背后的人正在做所有haxe / iphone / hxcpp的东西,他基本上说Flash 8不是hxcpp的可用目标,只是Flash 9及以上.. ..谢谢你的回应!
http://gamehaxe.com/2009/08/17/switched-to-immix-for-internal-garbage-collection/#comment-309