MACHO_CURRENT_VERSION¶
於 3.17 版本新增。
此目標適用於 Mach-O 二進制檔的目前版本號碼。
對於 Mach-O 系統(例如 macOS、iOS)上的共享函式庫,MACHO_COMPATIBILITY_VERSION
屬性對應於相容性版本,而 MACHO_CURRENT_VERSION
則對應於目前版本。這兩者都嵌入在共享函式庫二進制檔中,可以使用 otool -L <binary>
命令進行檢查。
應該注意的是,MACHO_CURRENT_VERSION
和 MACHO_COMPATIBILITY_VERSION
屬性不會影響 CMake 為函式庫產生的檔名或與版本相關的符號連結。VERSION
和 SOVERSION
目標屬性仍然控制檔案和符號連結名稱。install_name
也仍然由 SOVERSION
控制。
當未給定 MACHO_CURRENT_VERSION
和 MACHO_COMPATIBILITY_VERSION
時,則會分別使用 VERSION
和 SOVERSION
作為要嵌入在二進制檔中的版本詳細資訊。只有當專案需要將檔案和符號連結命名與嵌入在二進制檔中的版本詳細資訊分離時(例如,為了符合 libtool 慣例),才需要給定 MACHO_CURRENT_VERSION
和 MACHO_COMPATIBILITY_VERSION
屬性。