2016-03-23 27 views
2

私はクロスプラットフォームでなければならないアプリケーションを作成していますので、私の考えはCで完全な基盤を書いて、Objective-Cや他の適切な言語(つまりC++ Linuxの場合)。XCodeでOpenSSLを使用する7.3

このアプリケーションでは、OpenSSLを使用する必要があります。 Apple として記載されているように、はSDK 10.11以降、このライブラリのサポートを失っています。 OpenSSLはSDK 10.10まで利用できるはずです。

私の質問:私はXCode 7.3で開発したいと思いますが、私のアプリもかなり古いバージョンのOS Xと下位互換性があります。私の考えは、新しいXCode 7.3に古いSDKをインストールし、次に "Build settings" - > "Base SDK"で使用する正しいSDKを選択する必要があるということです。

誰かが新しいXCodeに古いSDKをダウンロードしてインストールする方法を説明する文書で私を指摘できますか?アップルデベロッパーのWebサイトでは、古いバージョンのXCodeしか見つかりませんでしたが、XCodeの古いバージョンがインストールされます...

大変ありがとうございます。

答えて

1

古いSDKでビルドするのではなく、自分でOpenSSLをビルドしてリンクする必要があります。 documentationから:あなたのアプリには、OpenSSLに依存している場合

、あなたは、OpenSSLを自分でコンパイルする必要がありますし、静的アプリにはOpenSSLの既知のバージョンをリンクします。

OS Xに同梱されているOpenSSLのバージョンは古く、古くなっています。 Appleは、後方互換性を損なうことなく新しいバージョンを出荷することができなかったため、サポートを断念しました(OpenSSLはリリース間でAPIが安定していません)。

+0

ご回答ありがとうございます。多分私は間違った例を使用しました。私の質問は:(OpenSSLライブラリを超えて)下位互換性を確保するために古いSDKを構築する方法ですか? –

+0

通常の方法は、SDKの最新バージョンを使用してビルドすることですが、展開ターゲットをターゲットとするバージョンに設定します。 Swiftで開発している場合は、最も古いバージョンのターゲットOSに存在しないAPIを(#available()を使用してチェックすることなく)使用しようとすると警告が表示されます。 ObjCを使用している場合、コンパイラは残念なことに警告することはあまり賢明ではありません。そのために[DeployMate](http://www.deploymateapp.com)のようなツールを試すことができます。 –

関連する問題