XCode/PhoneGap - 苹果 Mach-O 链接器错误

3
我刚刚完成了我的应用程序编程。我试图将该应用程序存档以进行提交,但是它没有成功,显示了以下错误。只有在我想要归档应用程序时才会出现此问题,运行测试设备或模拟器时完美无误(没有错误)。
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)

我已经在过去几天里搜索了大量的信息。我尝试了所有我能找到的方法。 我将 Build Active Architecture Only 设置为“YES”,删除了搜索路径(它们已经为空),改变了 iOS 版本,设置了 Validate Build Product 等等。
我使用终端和 ./create 来创建我的项目。
甚至我新建了一个干净的项目,并在其中发布了我的源代码。问题每次都会出现(即使我尝试在源代码中不做任何更改就归档新项目)
使用: XCode 4.6.3 PhoneGap 2.9.0
我非常绝望并希望得到帮助。谢谢。
3个回答

8

解决方法

我找到了一个解决方法/解决办法。(因为Rep.限制10,所以无法发布,必须等待8小时)

  • 在目标的Build设置中,找到“其他链接器标志”。
  • 更改$(TARGET_BUILD_DIR)/libCordova.a
  • 到$(BUILT_PRODUCTS_DIR)/libCordova.a

或者只需转到Cordova站点并下载Cordova 3.0.0 (虽然旧的已知的“闪屏 - 白色闪光”回来了)

使用Cordova 3.0此问题已经解决:) 存档正常工作


0

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

更新: 使用PhoneGap 3.0.0重新构建了我的项目,现在可以打包归档。


0
对我来说,这个问题是通过在xcode的构建设置中将“仅构建活动架构”设置为“是”,针对“发布”设置来解决的。
FlyingLemon所描述的修复已经完成,因为我有最新版本的PhoneGap。
Phonegap版本3.4.0-0.19.13
Xcode版本5.1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接