2016-08-05 13 views
0

この質問がうまく表現されていない場合は、事前に申し訳ありませんが、私はかなり新しいことを達成しようとしています。64bit SDKを使用

私はObjective-Cのラッパー内キヤノンSDKを含めるようにしようとしています、私は64ビットのSDKをダウンロードするために必要な、この段落から理解:

で撮影する必要があるいくつかのステップがあります。プロジェクトでEOSFrameworkを使用するまず、最新のCanon EDSDK 64bitをダウンロードしてください。 EOSFrameworkは現在、64ビットのみでサポートされているARCに依存しています。したがって、EDSDKの64ビット版を使用する必要があります。また、EOSFrameworkの最新バージョンを.frameworkファイルとしてコンパイルまたはダウンロードしたことを確認してください。

ちなみに、以下の説明の後で、私がフレームワークを構築する際に得ているエラーは、64ビットに関連しています。画像は添付資料参照してください:

Errors

を誰かが私はこれを理解するための方法を指摘することはできますか?

答えて

0

私は、これは長期的に問題をもたらすことはありませんかどうかわからないんだけど、私はこの記事で答えを見つけました:_int64 does not name a type

これに続いて:

それはあなた、あなたのように見えますGCCでMSVC固有の__int64型を使用しようとしています。それは動作しません、代わりに長い長いを使用してください。

0

誰かが私はこれを理解するための方法を指摘することはできますか?

はあなたがをダウンロードしたSDKにEdsUInt64の宣言を追跡し、あなたが示されてきたソースをコンパイルするときに、それがコンパイラによって見られていない理由を把握する必要があります。

(コンパイラが満足していた)EdsUInt32を右クリックし、その定義にジャンプしてみてください。今見てみると、64ビット型は同じ場所に定義されていますか?それらは#if構造の中にありますか?もしそうなら、条件が真実ではないのはなぜですか?その他何らかの探偵活動をする。

また、TextWrangler/BBEditなどの優れたエディタを使用して、すべてのSDKソースに対して複数のファイルをすばやく検索して定義を見つけることもできます。

定義が見つからない場合は、SDKのバージョンが正しくありません。Canonに戻って正しいものを入手してください。

解決方法は、自分でタイプを定義する必要はほとんどありません。特にARCのコメントは、Mac固有のソースコードを持っていることを示しています。CanonをMacでコンパイルするので、MacやGnuの特定の問題がMacで失敗することはありません。

Good Hunting!

HTH