当我在实施Zbar条形码扫描程序插件时,让我的PhoneGap 3.2.0应用程序在Mac上编译时遇到问题。如果我部署到设备,它将在XCode内编译,但对于模拟设备,它会给出错误:
Ld的 DerivedData / MYAPP /建设/产品/调试-iphonesimulator / MYAPP.app / MYAPP 正常的i386 cd / Users / Cordova / MyApp / platforms / ios setenv IPHONEOS_DEPLOYMENT_TARGET 5.0 setenv PATH“/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.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 i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk -L /用户/科尔多瓦/ MyApp的/平台/ IOS / DerivedData / MYAPP /建设/产品/调试,iphonesimulator -L / Users / Cordova / MyApp / platforms / ios / ZBarSDK -L / Users / Cordova / MyApp / platforms / ios / MYAPP / Plugins / com.manateeworks.barcodescanner / MWBarcodeScanner -F /用户/科尔多瓦/ MyApp的/平台/ IOS / DerivedData / MYAPP /建设/产品/调试,iphonesimulator -filelist /Users/Cordova/MyApp/platforms/ios/DerivedData/MYAPP/Build/Intermediates/MYAPP.build/Debug-iphonesimulator/MYAPP.build/Objects-normal/i386/MYAPP.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -weak_framework CoreFoundation -weak_framework UIKit -weak_framework AVFoundation -weak_framework CoreMedia -weak-lSystem -force_load /Users/Cordova/MyApp/platforms/ios/DerivedData/MYAPP/Build/Products/Debug-iphonesimulator/libCordova.a -ObjC -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min = 5.0 -framework AssetsLibrary -framework CoreGraphics -framework MobileCoreServices -framework CoreLocation -weak_framework ImageIO -framework CoreMotion -weak_framework AudioToolbox -weak_framework SystemConfiguration -framework Foundation -framework UIKit -framework AVFoundation -framework CoreMedia -framework CoreVideo -framework QuartzCore -liconv -lzbar -Xlinker -dependency_info -Xlinker /Users/Cordova/MyApp/platforms/ios/DerivedData/MYAPP/Build/Intermediates/MYAPP.build/Debug- iphonesimulator / MYAPP.build /对象 - 正常/ I386 / MYAPP_dependency_info.dat -o /Users/Cordova/MyApp/platforms/ios/DerivedData/MYAPP/Build/Products/Debug-iphonesimulator/MYAPP.app/MYAPP
ld:警告:忽略文件 /Users/Cordova/MyApp/platforms/ios/ZBarSDK/libzbar.a,失踪 在文件中需要架构i386 /Users/Cordova/MyApp/platforms/ios/ZBarSDK/libzbar.a(3 slice)架构i386的未定义符号:
“_OBJC_CLASS _ $ _ ZBarReaderViewController”,引自: ZbarcodeScanner.o“_ZBarReaderControllerResults”中的objc-class-ref,引自: - [ZbarcodeScanner imagePickerController:didFinishPickingMediaWithInfo:] in ZbarcodeScanner.o ld:找不到架构i386 clang的符号: 错误:链接器命令失败,退出代码为1(使用-v查看 调用)
虽然我实际上并不想要或不需要模拟设备;问题是从终端,当我运行命令时:
$ cordova build ios
它引发了错误:
错误:构建ios项目时发生错误。
**建筑失败**
以下构建命令失败:
Ld build/emulator/MyApp.app/MyApp normal i386
(1失败)
如果我尝试单独输入错误中显示的命令,它会告诉我:
ld:找不到文件:build / emulator / MyApp.app / MyApp
这是真的。它不存在。我认为在此之前还有其他东西失败并阻止它被创建。
如果我一起删除Zbar,一切正常。
我所做的应用程序的早期版本是回到PhoneGap v2.5.0并且没有使用命令行界面来创建构建。我手动把它全部放在一起,所以它没有给我这个问题。
我已经在Build Settings / Build Phases部分尝试了很多东西。我已经在这里工作了两个星期,似乎我尝试的所有内容都会导致新的错误消息。请帮忙!
答案 0 :(得分:0)
我解决了这个问题!我把ZBar的版本降级到了以前的版本,它立即就可以了。我的项目中有一些版本显然有ios7修复。最后不确定问题的确切原因是什么。