Xcodeで誤ってターゲットを削除しました。
そのため、まったく同じ名前の新しいものを作成しました。ターゲット設定で、適切なコード署名IDを再度選択しました
しかし、今はもうデバイス用にコンパイルできません。私が構築したいとすぐに、私は得る:
CodeSign build/Release-iphoneos/myApp.app
....somestuff....
/Volumes/XCodeProj/myApp/build/Release-iphoneos/myApp.app: object file format invalid or unsuitable
Connad /usr/bin/codesign failed with exit code 1
私はすでにターゲットをきれいにしようとしました。この問題の原因と解決方法を教えてください。
インストールに問題がある場合もあります。私の場合、最新のcodesign_allocateへのシンボリックリンクにより問題が解決されました。
Sudo mv /usr/bin/codesign_allocate /usr/bin/codesign_allocate_old
Sudo ln -s /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate /usr/bin
Mountain Lionでは、これをcodesignの前に実行してみることができます。
export CODESIGN_ALLOCATE="/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate"
ターゲットのinfo.plistの「実行可能名」(CFBundleExecutable)エントリが、ターゲット設定で指定された「製品名」と一致していることを確認してください。
ターミナルからコード署名しようとしたときに、この問題が発生しました。 Xcode 3.0をアンインストールした後、Xcode 4.4をインストールしました。 Xcodeの設定でダウンロードを見て、コマンドラインツールがインストールされていないことに気付きました。これをインストールした後、私の問題は修正されました。ここでの解決策を考えると、問題はより複雑になると思いますが、これは、将来のユーザーがより深く潜り始める前に確認したいものです。
私にとって、これはXCode 4.5にアップグレードした後に発生していました。
解決策は、単に環境設定/ダウンロードに移動し、最新のコマンドラインツールをインストールすることでした。
私もこの問題に自分の解決策を追加すると思った...私はこの問題に数週間苦労してきた...上記のすべての解決策をチェックし、さらに変更しました。
私の解決策はターゲットにありましたbuild settings
。
私は2つのオプションarmv6
およびarmv7
。これをnormal
の単一のエントリに戻し、ビルドしました!
ビルド設定のすべての種類の同じ問題を試し、GCC4.0を検索し、パスなどを検索しました。ビルド設定で何もすることはありませんでした。私の場合は、問題はターゲットにあります。ターゲティング3.0「SDK」は「ターゲット」Granade3.0と呼ばれています。
「Grenade3zero」と名付けられたブランドの新しいプロジェクトを開始し、元のソースからインポートされた、アプリデリゲートの名前を修正し、プロジェクトの名前などに合わせてビルドし、実行して、デバイスにロードし、最初にチェックしたときにシミュレーターをチェックしました。一部のキャラクターは、ターゲット名に違法であるように見えます!
emcmanusの答えは私のために働いたが、Xcode 4.3がApplicationsフォルダにインストールされ、古い/ Developerフォルダを削除したため、codesign_allocateへのパスを変更する必要がありました。
Sudo mv /usr/bin/codesign_allocate /usr/bin/codesign_allocate_old
Sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate /usr/bin
署名プロセスを開始する前にMountain Lionの場合、以下のコマンドを最初のコマンドとして実行してください。
Xcode 4.xの場合:CODESIGN_ALLOCATE = "/ Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate"をエクスポートします。
XCode 5の場合:CODESIGN_ALLOCATE = "/ Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate"をエクスポートします。
上記をすべて試してみましたが、役に立ちませんでした。私のために働いたのは、ビルドスクリプトに次を追加することでした:
export CODESIGN_ALLOCATE = "/ Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate"
問題の調査中にこの投稿に出会いました: http://mobiledevelopertips.com/mac-osx/code-signing-error-object-file-format-unrecognized-invalid-or-unsuitable.html
コマンドラインユーティリティなしでMountain LionおよびXcode 5.x.xで実行されているJenkinsで同様の問題に直面しました。コマンドラインユーティリティは現在Xcode 5.1.xにバンドルされているため
以下が働いた
Sudo ln -s /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate /usr/bin/
それはあなたのために働くはずです。
私も同じ問題を抱えていました。その原因は、アプリのターゲットが静的ライブラリにリンクされ、独自のソースファイルを提供していなかったことです(すべてのソースはライブラリにあり、アプリのターゲットはリソースのみを提供しました)。ソースの1つをライブラリからアプリターゲットに移動すると、コードサインエラーが修正されました。
Xcrunを使用してcodesign_allocateの正しいバージョンを見つけることをお勧めします。これは、OS XバイナリかiOSかによって異なる場合があるためです。
これにより、Appleはスクリプトを壊さずにさまざまなツールの場所を変更できます。
次のようなものを使用します。
export CODESIGN_ALLOCATE=$(xcrun --sdk iphoneos --find codesign_allocate)
アプリのターゲットビルド設定の製品名に特殊文字が含まれている場合は、それらを削除します。
たとえば、「Mat's app」の名前を「Mats app」に変更すると、ビルドされます。もちろん、表示名に特殊文字を含めることができます。
Appleとは異なるルート証明機関から会社が購入したデジタル証明書を使用してOS/X(iOSではない)アプリケーションに署名しようとすると、エラーが発生します。この問題は、Safari経由で証明書をダウンロードするたびに発生します。 Firefoxを使用して証明書をダウンロードすると、エラーを取り除くことができました。
Xcode DP(開発者プレビュー)の1つが原因だと思います。デフォルトのXcode.appパスをXcode DPに変更できます。
したがって、Uはxcode-select --print-path
でXcodeパスを確認できます
Uが間違ったディレクトリを取得した場合、Uはxcode-select --switch
によってパスを変更できます
このスレッドを確認してください。 xcrun開発者パスの変更