Catalina にアップグレードした後は? " /> Catalina にアップグレードした後は? " />
Catalina C :
の「signbit」エラーへの対処 Mojave から Catalina にアップグレードした後、ユーザーはコンパイルに遭遇する可能性がありますC プログラムで
最初は、CFLAGS、CCFLAGS、および CXXFLAGS 環境変数を変更しようとしても結果が得られないように見えますが、詳しく調べると、問題の根本原因は別の場所にあります。 .
の役割CMAKE_OSX_SYSROOT
CMAKE_OSX_SYSROOT の値は、この問題において重要な役割を果たします。この設定ミスにより、Catalina にアップグレードした後、ビルド システムで間違ったヘッダー ファイルが使用されます。必要な定義が不足しています。
解決策:正しい CMAKE_OSX_SYSROOT
この状況を修正するには、SDK ヘッダーへの適切なパスを手動で指定することが重要です。これは、次の手順を実行することで実現できます。
set(CMAKE_OSX_SYSROOT /sdk/path)
または、CXX コンパイラに -isysroot フラグを直接設定することもできます。
set(CMAKE_CXX_FLAGS "[...] -isysroot /sdk/path")
結論
CMAKE_OSX_SYSROOT の不適切な設定に対処することで、問題を正常に解決できます。 「signbit」に関連するエラーが発生したため、
以上がCatalina にアップグレードした後、「signbit」が