MacOS需要不同的操作系统版本与Info.plist



我正在构建一个 MacOS 应用程序包,并且我使用Info.plist中的LSMinimumSystemVersion键指定了最低操作系统版本 (10.10)。只要我们在OS 10.12上运行它,该应用程序本身就可以正常工作。但是,如果我们尝试在 10.11 上启动它,则会出现错误:">您不能将此版本的应用程序与此版本的 OS X 一起使用。您使用的是 OS X 10.11.6。应用程序需要 OS X 10.12 或更高版本。

我已经调查了我能找到的与操作系统版本检查相关的所有内容,但我无法弄清楚发生了什么。即使我完全省略LSMinimumSystemVersion条目,我们也得到相同的结果。我们已经在多台运行 10.11 的 Mac 上进行了测试,它一直失败,所以这不是一些特定于机器的错误。实际的二进制文件(埋藏在应用程序包中的可执行文件)在 10.11 上运行良好,只是应用程序捆绑包失败。

我正在使用 makefile 而不是 Xcode 构建应用程序(原因太长,无法在这里讨论)。也许我需要添加一些额外的步骤?

下面附上的信息列表(略有审查):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>*********</string>
<key>CFBundleGetInfoString</key>
<string>***************************</string>
<key>CFBundleIconFile</key>
<string>*******.icns</string>
<key>CFBundleIdentifier</key>
<string>*********************</string>
<key>CFBundleName</key>
<string>***************************</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>**.**.**</string>
<key>CFBundleVersion</key>
<string>**.**.**.**</string>
<key>LSMinimumSystemVersion</key>
<string>10.10.0</string>
<key>NSHumanReadableCopyright</key>
<string>**********************</string>
</dict>
</plist>

您是否正在编译/链接-mmacosx-version-min?将-mmacosx-version-min=10.10添加到编译器/链接器选项(如果尚未添加)

最新更新