Catalina升级后,由于新的安全性,无法使用旧的NDK(android-ndk-r17c)


14

升级到macOS Catalina后,我的项目将不再构建。这是由于Catalina认为'android-ndk-r17c'中的二进制文件不是来自受信任的开发人员。

您会收到以下消息:““ ld”无法打开,因为无法验证开发人员。” “ macOS无法验证此应用程序没有恶意软件”

由于本机openCV库SDK和较新的NDK出现问题,我不得不使用旧的NDK。他们正在努力,但是较新的SDK对我来说还不够稳定。

通过转到安全窗格并在安全警报上单击“仍然允许”,我可以解决“ clang”和“ clang ++”无法工作的问题。但是,当使用“ Id”尝试此操作时,我可以通过单击“仍然允许”来跳过第一个警告,但它似乎随后被调用,而在随后的调用中,我没有允许它打开的选项。

确实没有代码。我只是(并且已经有很长时间了)通过配置指向旧NDK的Android Studio NDK参考。

在NDK的IDE中,它无法加载“ Id”:

““ ld”无法打开,因为无法验证开发人员。” “ macOS无法验证此应用程序没有恶意软件”


github.com/android/ndk/issues/1060。我不知道为什么您只允许其中一些。对我来说很好。
丹·艾伯特

Answers:


21

我刚刚找到了解决方案。

这是一个繁琐的过程,但是:

  1. MacOS:打开系统偏好设置
  2. MacOS:转到“安全和隐私”(将其保持打开状态,整个过程中都将需要它)
  3. Unity:开始构建您的项目。当错误出现时,单击“取消”
  4. MacOS:在“安全性和隐私”窗口中-转到“ c”错误旁边,然后单击“允许”,以便MacOS系统可以识别该应用并加以利用。
  5. 该错误将再次出现,但是这次将要求您“打开”它。点击“打开”
  6. 由于存在各种依赖关系,该构建将多次失败,但是如前面的步骤所述,它将因需要允许的其他文件而失败。
  7. 再次构建您的项目。
  8. 如果失败,请再次执行步骤,直到停止失败。您因无法识别文件而遇到的每个错误每次都会有所不同

2
另外:如果您sudo spctl --master-disable之前进行过操作,则在“允许从以下位置下载应用程序”下面有3个选项,您应该在第4步中选择第二个名为“应用程序商店并确定开发人员”,以便您可以看到“允许”和“ c”错误。
linjiang

请添加到“安全性和隐私”的“常规”选项卡上所需的说明中,以查看安全消息。
史蒂夫

5

要允许从MacOs Catalana上的任何位置下载应用程序,请执行以下操作:

sudo spctl --master-disable

这实际上有什么作用吗?我仍然什么也不能跑
Luz

这可能会删除一些步骤..因此,我们需要先按“允许”再按“打开” ..否则,必须允许每个工具使用的每个单个lib这都是噩梦。让我们做每个文件夹的基础..
PASCHALIS

因此,要显示“ Anywhere”,您必须将“安全和隐私”模块的设置保留下来。但是,现在我仍然收到“无法验证”消息,但是在任何地方都没有允许或打开状态。
UserOneFourTwo

3

我想补充一下穆达萨尔·阿什拉夫(Mudassar Ashraf)的答案。

如果看不到« 允许单击“ 取消 ” 后 ”选项,请将“安全”窗口中的“允许从中下载应用程序”切换为“ App Store和已识别的开发人员 ”。这样将使“ 允许 ”按钮出现。然后将其切换回“ 任何地方 ”。如有必要,请重复。


1

如果出于某种原因在“ 安全和隐私”窗口中按钮中未出现allow,则只需将ndk移至其他目录,然后重试整个过程即可。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.