從Mojave 升級到macOS Catalina 時,使用者在編譯時遇到錯誤使用
error: no member named 'signbit' in the global namespace
此錯誤源自於Catalina使用系統完整性保護 (SIP) 清除和保護 /usr/include 的事實。因此,任何希望在此目錄中找到 C 頭檔的專案都將無法編譯。
解決方案:
要解決此問題,需要直接建構系統到適當的標頭:
設定CMAKE_OSX_SYSROOT: 使用下列方法之一將此變數設定為xcrun --show-sdk-path 的結果:
如果這些步驟解決了問題,考慮探索在CMake 中設置這些標誌的更好方法。此外,停用 SIP(儘管冒險)可能會提供臨時解決方案。但是,建議向仍需要 /usr/include 中的 C 標頭的項目報告錯誤。
以上是'錯誤:'全局命名空間中沒有名為'signbit'的成員'Catalina 升級後:解決方案是什麼?”的詳細內容。更多資訊請關注PHP中文網其他相關文章!