XCode / PhoneGap - Apple Mach-O链接器错误

时间:2013-08-13 19:26:34

标签: objective-c xcode cordova

我刚刚完成了我的应用程序编程。我尝试归档应用程序以提交,但它没有工作,显示以下错误。只有当我想存档应用程序时才会出现此问题,在测试设备上运行或模拟器运行正常(无错误)。

Ld /Users/Admin/Library/Developer/Xcode/DerivedData/MyApp-ekptdmvfytpoeoaedgfvjzqudoqa/Build/Intermediates/ArchiveIntermediates/MyApp/InstallationBuildProductsLocation/Applications/MyApp.app/MyApp normal armv7
    cd /Users/Admin/Desktop/MyApp3
    setenv IPHONEOS_DEPLOYMENT_TARGET 6.1
    setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk -L/Users/Admin/Library/Developer/Xcode/DerivedData/MyApp-ekptdmvfytpoeoaedgfvjzqudoqa/Build/Intermediates/ArchiveIntermediates/MyApp/BuildProductsPath/Release-iphoneos -L/Users/Admin/Desktop/MyApp3 -F/Users/Admin/Library/Developer/Xcode/DerivedData/MyApp-ekptdmvfytpoeoaedgfvjzqudoqa/Build/Intermediates/ArchiveIntermediates/MyApp/BuildProductsPath/Release-iphoneos -filelist /Users/Admin/Library/Developer/Xcode/DerivedData/MyApp-ekptdmvfytpoeoaedgfvjzqudoqa/Build/Intermediates/ArchiveIntermediates/MyApp/IntermediateBuildFilesPath/MyApp.build/Release-iphoneos/MyApp.build/Objects-normal/armv7/MyApp.LinkFileList -dead_strip -weak_framework CoreFoundation -weak_framework UIKit -weak_framework AVFoundation -weak_framework CoreMedia -weak-lSystem -force_load /Users/Admin/Library/Developer/Xcode/DerivedData/MyApp-ekptdmvfytpoeoaedgfvjzqudoqa/Build/Intermediates/ArchiveIntermediates/MyApp/InstallationBuildProductsLocation/Applications/libCordova.a -ObjC -fobjc-link-runtime -miphoneos-version-min=6.1 -lxml2 -lxml2.2 -larchive.2 -framework CoreLocation -framework ImageIO -framework OpenAL -framework AssetsLibrary /Users/Admin/Library/Developer/Xcode/DerivedData/MyApp-ekptdmvfytpoeoaedgfvjzqudoqa/Build/Intermediates/ArchiveIntermediates/MyApp/BuildProductsPath/Release-iphoneos/libCordova.a -framework Foundation -weak_framework UIKit -framework CoreGraphics -framework AddressBook -framework AddressBookUI -framework AudioToolbox -weak_framework AVFoundation -framework CFNetwork -framework MediaPlayer -framework QuartzCore -framework SystemConfiguration -framework MobileCoreServices -weak_framework CoreMedia -framework CoreLocation -lCordova -o /Users/Admin/Library/Developer/Xcode/DerivedData/MyApp-ekptdmvfytpoeoaedgfvjzqudoqa/Build/Intermediates/ArchiveIntermediates/MyApp/InstallationBuildProductsLocation/Applications/MyApp.app/MyApp

ld: file not found: /Users/Admin/Library/Developer/Xcode/DerivedData/MyApp-ekptdmvfytpoeoaedgfvjzqudoqa/Build/Intermediates/ArchiveIntermediates/MyApp/InstallationBuildProductsLocation/Applications/libCordova.a
clang: error: linker command failed with exit code 1 (use -v to see invocation)


(null): File not found: /Users/Admin/Library/Developer/Xcode/DerivedData/Myapp-ekptdmvfytpoeoaedgfvjzqudoqa/Build/Intermediates/ArchiveIntermediates/Myapp/InstallationBuildProductsLocation/Applications/libCordova.a

(null): Linker command failed with exit code 1 (use -v to see invocation)

过去几天我已经用Google搜索了**。我尝试了我发现的一切。我将Build Active Architecture仅设置为" YES",删除了搜索路径(它们已经为空),更改了iOS版本,设置了验证构建产品和其他内容。

我使用终端和./create创建我的项目。

我甚至做了一个新的干净项目并在那里发布了我的源代码。每次都会出现问题(即使我尝试归档新项目而不更改源代码中的任何内容)

是: XCode 4.6.3 PhoneGap 2.9.0

我绝望,希望得到帮助。谢谢。

3 个答案:

答案 0 :(得分:8)

<强>解

我找到了一个解决方案/解决方案。 (无法发布,因为如果10Rep。限制,则必须等待8小时)

  • 在Target的Build Settings中,找到“Other Linker Flags”
  • 更改$(TARGET_BUILD_DIR)/libCordova.a
  • 至$(BUILT_PRODUCTS_DIR)/libCordova.a

只需访问Cordova网站并下载 Cordova 3.0.0 (虽然旧的已知“闪屏 - 白色闪光灯”已经回来了)

Cordova 3.0 此问题已修复 :) 存档工作很好。

答案 1 :(得分:0)

我遇到了同样的问题...在模拟器和测试设备上工作正常,在Cardova和MyApp项目上将Build Active Architecture设置为“YES”,使用终端./create创建,从头开始重建项目。 使用:XCode 4.6.3 PhoneGap 2.9.0

更新: 使用PhoneGap 3.0.0重建我的项目,现在可以存档。

答案 2 :(得分:0)

对我来说,这是通过设置&#34; Build Active Architecture Only&#34;到&#34;是&#34;对于&#34;发布&#34;在xcode中的Build Settings中进行设置。

FlyingLemon描述的修复程序已经完成,因为我有最新版本的PhoneGap。

Phonegap版本3.4.0-0.19.13

Xcode版本5.1