web-dev-qa-db-ja.com

Apple Mach-Oリンカーエラー配布用にビルドするときのZBarSDKエラー

IOS用のバースキャンライブラリであるZBarSDKを使用しているときに、これと同じエラーが発生しました。開発デバイスにアップロードするか、iOS6シミュレーターでテストすると、正常に動作します。しかし、配布用に実行しようとすると、次のように失敗します。

(null):ファイルはユニバーサル(3スライス)ですが、a(n) armv7sスライス:/ Users/quique123/Documents/iphone apps/ScanThis/ZBarSDK/libzbar.a forarchitecture)が含まれていませんarmv7s

ここで、libzbar.aはSDKのライブラリです。

何か案は?

25
marciokoko

Target Aguilar Settingsの有効なアーキテクチャから不良アーキテクチャを削除するだけで、準備は完了です:)

11
marciokoko

ZBarコードMercurialコードリポジトリを開きます

http://zbar.hg.sourceforge.net/hgweb/zbar/zbar/summary

Bz2/Zip/gzリンクに移動して、現在のソースをダウンロードします(推奨形式)

http://zbar.hg.sourceforge.net/hgweb/zbar/zbar/archive/fa84e0427c24.tar.bz2 (この投稿日現在) http://zbar.hg .sourceforge.net/hgweb/zbar/zbar/archive/fa84e0427c24.Zip (この投稿日現在) http://zbar.hg.sourceforge.net/hgweb/zbar/zbar/archive/ fa84e0427c24.tar.gz (この投稿日現在)

「iphone」サブディレクトリを開きます

'zbar.xcodeproj'ファイルを開きます

スキームのメニューでlibzbarを選択し、サポートされているアーキテクチャで独自のバイナリバージョンを構築します

そのプロジェクトのDerivedDataを開き、Build/Products /に移動します

Libzbar.aのすべてのフォルダーを調べます

16
sbonami

ターゲットを選択した場合>ビルド設定(すべて)>アーキテクチャ>有効なアーキテクチャ。

上記のエラーが発生した場合は、行をダブルクリックしてarmv7sを選択し、(-)ボタンを押して、armv7sを削除します(おそらく[armv7 armv7s]と表示されます)。

私の場合、これでエラーは解決しました。これにさらにマイナス面があるかどうかはわかりません。

編集:これには少なくとも1つの欠点があると確信しています:プロジェクトはiPhone 5用にビルドできません。その解決策は、ここに記載されているように、ZBarソースを再コンパイルすることです: iPhone 5(ARMV7s用のZBarライブラリ)

7
Jacco

ZBarSDKの新しいビルドは以下のURLからダウンロードできます。

http://sourceforge.net/projects/zbar/files/iPhoneSDK/beta/

4
Aruna

ビルド設定/有効なアーキテクチャで置き換えました:2行の「armv7」「armv6」と「armv7」

(通常、私はiTunesに送信するときにのみこのリンカーエラーを取得していましたが、デバイスでのデバッグは行いませんでした)

1
Pablo

「armv7s」を削除するだけで、これは機能します:)

0
Nuno Ferro

リリースするには、「アクティブなアーキテクチャのみを構築」を「はい」に設定します。これと同じ問題に直面していたので、そうすることで問題を修正しました。

0
sam