升级到4.5的Xcode,可能核心地块后,相关链接错误 - iOS设备(iOS - Linker

2019-06-28 08:18发布

我刚刚升级到Xcode 4.5GM和整理了在我的iPhone项目的一些画面,以应付额外的屏幕尺寸上iPhone 5的项目瞄准iOS 5.1和我刚刚来建立它为我的手机,我得到这个连接错误:

文件是通用的(2片),但不包含(n)的armv7s切片:/Users/JonathanW/Documents/MyXcode/myApp/myApp/CorePlot/libCorePlot-CocoaTouch.a为架构armv7s

我使用的是Core Plot 1.0静态库在我的项目,还没有与它的任何问题,到现在为止。 环顾四周,我可以看到类似的错误,做构建的架构设置,但不知道从哪里何去何从。 该项目在模拟器(均工作正常iOS 5.1iOS 6 )。 有任何想法吗?

Answer 1:

通过它的外观,你会需要重建libCorePlot库和Xcode 4.5GM,这样有图书馆的ARMV7S构建。 好像它试图使用你与旧的Xcode内置的版本。



Answer 2:

我也用我的项目的核心情节1.0静态库。 我可以通过设置建立有效的架构只有 ,以解决这一问题。 建立有效的体系结构不仅是在Xcode中目标的生成设置结构部分。

我下载这似乎是不完整的,所以我不能重建库的核心情节1.0 zip文件。



Answer 3:

它的工作原理在模拟器,因为模拟器将始终使用i386架构。 这并没有与新的SDK改变。 有所改变的是iPhone 5的,它采用了全新的架构(armv7s)的存在。 你的应用程序的项目自动添加armv7s作为一个有效的架构,但是库没有对它的了解很可能编译。 因此,启用了arm7s,应用程序试图对抗,没有armv7s建成并未能库链接。

为了解决这个问题,你只需要访问产生的库项目。 修改目标上的“有效架构”的设置,包括armv7s,然后重建。



Answer 4:

我一直在努力,现在这个天终于成功得到它通过创建一个新的静态库的工作。

我曾经通过指令的水银源代码控制系统在这里: 创建使用Mecurial静态库和“核心积静态库安装”从这里找到维基: 如何做一个静态库安装睿剧情

我张贴这对我这样的人,低经验,因为这是很简单的,自我解释。



Answer 5:

你做一个干净的重建? 也请检查您的ARMv6和ARMv7的架构。 您可能需要重新编译你的目标和库重新添加到目标



Answer 6:

从交换机上的苹果LLVM编译器4.1到LLVM GCC 4.2 CorePlot项目编译



Answer 7:

只要我编写的核心情节库,并遵循相关项目通过此链接安装http://code.google.com/p/core-plot/wiki/UsingCorePlotInApplications
和每一件事情会像一个魅力(我的项目现在支持的ARMv7和armv7s没有任何问题),此外,我还设置建立有效体系结构只为NO,就一定要支持所有架构



Answer 8:

你只需要从有效架构的列表中删除armv7s。

只是做以下的事情。 - 选择从项目导航项目 - 选择从 - 选择构建设置选项卡 - 查找的“有效架构”设定的目标列表中选择目标。 这应该说的ARMv7 armv7s。 删除armv7s会有仅可用于ARMv7在您的有效架构。 现在,您的项目将正确编译。



Answer 9:

使用Xcode中5时修复链接错误为核心地块

我一直在使用的核心情节多年,渐渐一堆关于不支持的“CorePlotHeader”文件夹中的某些文件armv7s“苹果的Mach-O连接器警告”的错误,在我的项目目前已更新(删除的文件夹并拖动新文件夹到我的项目)来反映CorePlot_1.4变化。 我也删除了旧的“libCorePlot-CocoaTouch.a”库,并带来了在我的框架文件夹。 一切都在模拟器中工作得很好,但我不能在我的iPad 4与iOS 7.0.2建立。

这是我发现的唯一的事情调试时,工程(似乎归档等时工作):

1)我上面提到的一切,设置建立有效的体系结构来没有,那么干净

2)你可能会得到关于“arm64”不被支持的架构错误,因此删除“arm64”出生成设置你的“合法建筑”节

3)右键点击你的“MyApp.app”的文件在你的产品文件夹时调试,你可能会看到老“libCorePlot-CocoaTouch.a”(如果修改日期是前13年9月28日)与您的应用程序进行编译。

4)删除库和复制新的一个到生成文件夹,然后清洁重建

这适用于“静态库安装”方法和使用“依赖项目安装”尚未经过测试方法



Answer 10:

我使用的核心在Xcode 4.4绘制1.0静态库的iOS 6.1。 更新到Xcode中4.5与iOS 7.0后,我面临着同样的问题你。

为了解决这个问题,我删除了我的项目中CorePlotHeaders文件夹和libCorePlot-CocoaTouch.a。 如果您在Xcode中删除它,选择选项“移动到回收站”。

然后,我从下载CorePlot_1.4.zip https://code.google.com/p/core-plot/downloads/list ,然后我按照静态库从安装https://code.google.com/p/core-剧情/维基/ UsingCorePlotInApplications

希望能帮助到你



文章来源: iOS - Linker error after upgrading to Xcode 4.5, possibly Core Plot related