守望者--AIR技术交流

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
热搜: ANE FlasCC 炼金术
查看: 1119|回复: 0

[打包发布] Adobe AIR打包用到外部sdk的ANE时报错

[复制链接]
  • TA的每日心情
    擦汗
    2018-4-10 15:18
  • 签到天数: 447 天

    [LV.9]以坛为家II

    1742

    主题

    2094

    帖子

    13万

    积分

    超级版主

    Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18

    威望
    562
    贡献
    29
    金币
    51788
    钢镚
    1422

    开源英雄守望者

    发表于 2015-1-15 14:32:43 | 显示全部楼层 |阅读模式

    现象:

    我们项目需要用到ANE扫二维码的功能,XCode里用ZBarSDK写好之后发布成ane,adt打包成ipa的时候报错如下:

    1. <font color="rgb(34, 34, 34)"><font face="Helvetica, Arial, sans-serif">Packaging failed!
    2. Packaging error message:
    3. Compilation failed while executing : ld64
    4. Packaging output:
    5. ld: warning: ignoring file /var/folders/l5/kql7svqx5j93vwg65tj3pt_c0000gn/T/8e0d5504-ffea-41da-a45b-22cfe260a197/libcn.flashj.ane.ios.QRScan.a, file was built for archive which is not the architecture being linked (armv7): /var/folders/l5/kql7svqx5j93vwg65tj3pt_c0000gn/T/8e0d5504-ffea-41da-a45b-22cfe260a197/libcn.flashj.ane.ios.QRScan.a
    6. Undefined symbols for architecture armv7:
    7. “_QRScanExtInitializer”, referenced from:
    8. _g_com_adobe_air_fre_fmap in extensionglue.o
    9. (maybe you meant: _QRScanExtInitializer_name)
    10. “_QRScanExtFinalizer”, referenced from:
    11. _g_com_adobe_air_fre_fmap in extensionglue.o
    12. (maybe you meant: _QRScanExtFinalizer_name)
    13. ld: symbol(s) not found for architecture armv7</font></font>
    复制代码
    起初以为是XCode里项目参数设置的有问题,怀疑“Link Binary With Libraries”中libiconv加得不对,可是仔细检查过没问题,而且所有该要的源文件已经包含在target里了。最后找到
    解决方法:用到外部库开发的ane,都需要创建一个XML文件,在里面设置用到的外部库,就像我这里platformoptions.xml
    1. <platform xmlns="http://ns.adobe.com/air/extension/3.1">
    2.     <description > An optional description</description>
    3.     <copyright>2012 (optional)</copyright>
    4.     <linkerOptions>
    5.         <!--        <option>-framework CoreMotion</option> -->
    6.         <option>-liconv</option>
    7.     </linkerOptions>
    8. </platform>
    复制代码
    并且在adt打包参数中加入-platformoptions platformoptions.xml。dt打包参数中加入-platformoptions platformoptions.xml 就可以了。顺带,推荐个对iOS写ane有奇效的好工具:XCode-template-ane

    这是XCode模板,只要设置好你用来生成ane的接口swc路径和AIR SDK路径,剩下的只是写OC代码,它代替你做adt打包的步骤,一键自动生成ane。



    本文来自:http://www.flashj.cn/wp/error-when-adt-package-ipa-with-ane-includes-ios-external-sdk.html



    守望者AIR技术交流社区(www.airmyth.com)
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    
    关闭

    站长推荐上一条 /4 下一条

    QQ|手机版|Archiver|网站地图|小黑屋|守望者 ( 京ICP备14061876号

    GMT+8, 2019-11-18 21:36 , Processed in 0.049084 second(s), 37 queries .

    守望者AIR

    守望者AIR技术交流社区

    本站成立于 2014年12月31日

    快速回复 返回顶部 返回列表