openfl使用64位的ndk时,编译报错的问题!
当使用64位的ndk时,如果使用openfl test android运行android测试,应该会出现 arm-linux-androideabi-g++:找不到这个命令的错误。
原因是,haxelib 的build工具使用的是32位的文件路径。
此时需要修改(windows环境下):\haxe\lib\hxlibc\1,0,0\build-tool\BuildTool.hx 1363 行附近,找到:
else if ( (new EReg("window","i")).match(os) ) defines.set("ANDROID_HOST","windows");
修改为:
else if ( (new EReg("window","i")).match(os) ) defines.set("ANDROID_HOST",m64 ? "windows-x86_64":"windows");
(如果是linux系统)就修改下面一点点的:
else if ( (new EReg("linux","i")).match(os) ) defines.set("ANDROID_HOST",m64 ? "linux-x86_64":"linux-x86");
然后在当前路径下运行:haxe Compile.hxml。
ok
启动的时候加上 64的参数:openfl test -DHXCPP_M64 android。
参考解决方案(我没有照着全做):
http://www.rocketshipgames.com/blogs/tjkopena/2013/07/haxe-3-openfl-arch/