添加-O4标志时,FlasCC示例01无输出

时间:2012-12-09 13:22:40

标签: flash flascc

我只在Flascc SDK 1.0示例01_helloworld项目中将-O4 -flto-api = exports.txt添加到Makefile脚本

这是最终的Makefile内容:

    "$(FLASCC)/usr/bin/gcc" $(BASE_CFLAGS) hello.c -O4 -flto-api=exports.txt -emit-swf -swf-size=200x200 -o hello.swf

exports.txt是09_Pthreads的副本,这里是内容:

# built in symbols that must always be preserved
_start1
malloc
free
memcpy
memmove
flascc_uiTickProc
_sync_synchronize

# symbols for C++ exception handling
_Unwind_SjLj_Register
_Unwind_SjLj_Resume
_Unwind_SjLj_Unregister
_Unwind_SjLj_RaiseException

构建完成后,我用flash调试APP 11.5打开它,但没有任何内容。

Where is my HelloWorld

我能做些什么来弄清楚原因吗?感谢您的任何建议。

2 个答案:

答案 0 :(得分:1)

使用此 - 或者只在你的export.txt中添加:__ muldi3和vglttyioctl

_start1 的malloc 自由 的memcpy 的memmove flascc_uiTickProc vglttyioctl __muldi3

答案 1 :(得分:0)

正如paleozogt所提到的,如果使用导出文件对符号ater有引用错误,则表示导出文件没有保护足够的符号。将“_vglttyioctl”添加到您的exports.txt文件应该可以解决问题。

如果LLVM可以使用符号查看代码,则默认情况下通常会保护符号。唯一的例外是当唯一的引用来自它无法看到的AS3代码。在这种情况下,默认的控制台实现期望能够调用vglttyicotl函数,但它已被条带化,因为它在导出文件或bitcode的其余部分中没有提到。