Xcode 12(iOS 14 SDK)をインポートしてbcciosarm64でビルドすると、「'_UINTPTR_TYPE_' は不明な型名です」というエラーが発生する

提供: Support
移動先: 案内検索

問題

SDKマネージャにiPhone OS 14.0(Xcode 12)を登録し、FireMonkeyプロジェクトをC++Builder(bcciosarm64)でビルドすると、以下のエラーが発生します。

[bcciosarm64 エラー] ptrauth.h(101): '__UINTPTR_TYPE__' は不明な型名です
[bcciosarm64 エラー] ptrauth.h(104): '__UINTPTR_TYPE__' は不明な型名です


この問題は、C++BuilderのiOSコンパイラ(bcciosarm64)のバージョンが影響しています。


「__UINTPTR_TYPE__」という組み込みマクロのサポートは、clang 3.5(commit ab8d0a0dd514e8313f39e3f09482468577ffe144)で追加されているのですが、bcciosarm64はclang 3.3.1とバージョンが古いため、このマクロが認識できないことに起因いたします。

"C:\Program Files (x86)\Embarcadero\Studio\21.0\bin\bcciosarm64.exe" --version

Embarcadero C++ 7.50 for iOS 64-bit device Copyright (c) 2012-2020 Embarcadero Technologies, Inc.
Embarcadero Technologies Inc. bcciosarm64 version 3.3.1 (37095.ab293fa.e8f5912) (based on LLVM 3.3.1)
Target: arm64-apple-ios
Thread model: posix

このエラーは、2020年11月にリリースされた10.4.1向けのAppleプラットホーム Patchを適用しても、改善されておりません。

解決

この症状は、RAD Studio 10.4.1向けPatch: Appleプラットフォームの修正(12月更新版)compclang33.dllが修正されエラーは改善されました。

もし12月更新版へアップデート後、DBXCommon.oに関連したエラーが発生が発生する場合は、こちらを参照ください。

関連情報