zoukankan      html  css  js  c++  java
  • xcode工程编译错误:missing required architecture i386 解决方法

    可能原因一:项目内保存了.framework文件,在复制分发到不同计算机的时候可能会引发该错误

    解决方法一:
    来到Targets->Build Settings->Framework Search Paths,将其内容删除。让xcode不管项目目录下的.framework文件,而是去包含本机的。当然你也可以手动删除它们。

    解决方法二:
    这个是在stack overflow上看到的:

       I had this same problem, and the solution turned out to be an easy fix. Backup then open project.pbxproj(located inside your project file bundle) in TextMate or TextEdit and search for the section titled "/* Begin XCBuildConfiguration section */". Look for a key named FRAMEWORK_SEARCH_PATHS and delete it and it's contents (once per build configuration, so I removed it in two places).

    解释:用文本编辑器打开位于项目包内的project.pbxproj,找到并删除FRAMEWORK_SEARCH_PATHS键值。跟方法一差不多。

    解决方法三:
    删除Library Search Paths的内容,这个可能性比较小吧,莫非是sdk库被存到项目目录下了?

    可能原因二:正如这个错误提示所指出的那样,缺少了i386架构的东西。这很可能是由于项目中包含的静态库是被编译用于真机测试的,大家都知道苹果手机cpu是arm架构,而mac笔记本(当然也包括运行于其上的iphone-simulator)是intel架构。所以当这个静态库被编译用于device的时候,在目标为simulator下的编译是会报错的。

    解决方法一:
    直接真机调试。

    解决方法二:
    重新为simulator编译静态库,然后有一个更高端的解决办法,就是将两种架构的静态库合并:

    lipo -create Release-iphonesimulator/libMAMapKit.a Release-iphoneos/libMAMapKit.a -output libMAMapKit.a
    
     
  • 相关阅读:
    管理博文 Web开发教程:Kendo UI for jQuery数据管理——列模板
    WPF界面开发新纪元——Diagram/Gantt控件升级
    Winform界面开发:WinForms应用程序中的MDI、SDI和MFI接口类型
    依赖注入[2]: 基于IoC的设计模式
    依赖注入[1]: 控制反转
    OAuth2.0的理解&基础
    开放平台鉴权以及OAuth2.0介绍
    OAuth2.0 知多少
    理解OAuth 2.0
    微服务架构介绍及开源框架
  • 原文地址:https://www.cnblogs.com/lxlx1798/p/6815473.html
Copyright © 2011-2022 走看看