Zbar Barcode Scanner使用PhoneGap编译错误

时间:2013-12-18 10:41:33

标签: ios xcode cordova zbar-sdk

当我在实施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部分尝试了很多东西。我已经在这里工作了两个星期,似乎我尝试的所有内容都会导致新的错误消息。请帮忙!

1 个答案:

答案 0 :(得分:0)

我解决了这个问题!我把ZBar的版本降级到了以前的版本,它立即就可以了。我的项目中有一些版本显然有ios7修复。最后不确定问题的确切原因是什么。