我只将-O4 -flto-api=exports.txt添加到Flascc SDK1.0示例01_helloworld项目的Makefile脚本中
这是最终的Makefile内容:
"$(FLASCC)/usr/bin/gcc" $(BASE_CFLAGS) hello.c -O4 -flto-api=exports.txt -emit-swf -swf-size=200x200 -o hello.swfexports.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 debug APP 11.5打开了它,但上面什么也没有。

我能做些什么来找出原因吗?谢谢你的建议。
发布于 2013-03-30 17:15:33
使用这个-或者只在你的export.txt中添加:__muldi3和vglttyioctl
_start1免费内存移动flascc_uiTickProc vglttyioctl __muldi3
发布于 2012-12-14 06:28:00
正如paleozogt所提到的,如果你在使用导出文件时出现了一个符号引用错误,这意味着你的导出文件没有保护足够的符号。在exports.txt文件中添加"_vglttyioctl“应该可以解决这个问题。
如果LLVM可以看到使用符号的代码,则符号通常在默认情况下是受保护的。唯一的例外是,当唯一的引用来自它看不到的AS3代码时。在这种情况下,默认的控制台实现希望能够调用vglttyicotl函数,但它已经被剥离,因为在导出文件或位码的其余部分中没有提到它。
https://stackoverflow.com/questions/13787758
复制相似问题