@Raj Lalwaniの答えは完全ではないので要約すると、いくつかの詳細は除外されました!
3つのファイル:
- CommonKeyDerivation.c
- CommonKeyDerivation.h
- CommonKeyDerivationPriv.h標準の以下のCommonKeyDerivation.cのソースで
、アップルのライセンスコメント、これを挿入:
#define KERNEL
これは、コンパイラエラーをオフにします。 iOSの4.2をターゲットSnow Leopardの上の場合
int
CCKeyDerivationPBKDF(CCPBKDFAlgorithm algorithm, const char *password, size_t passwordLen,
const uint8_t *salt, size_t saltLen,
CCPseudoRandomAlgorithm prf, uint rounds,
uint8_t *derivedKey, size_t derivedKeyLen)
__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA);
そして
uint
CCCalibratePBKDF(CCPBKDFAlgorithm algorithm, size_t passwordLen, size_t saltLen,
CCPseudoRandomAlgorithm prf, size_t derivedKeyLen, uint32_t msec)
__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA);
変更し、この__OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_4_2)
へ__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA)
:CommonKeyDerivation.hのソースで
は、示すように、2つのプロトタイプがあります。
ビルドオプションにインクルードパスを指定する必要がある場合があります。
これは私の感情でした。私が望んでいたように実際にはうまくいきました。 –