No se puede usar el NDK anterior (android-ndk-r17c) después de la actualización de Catalina debido a la nueva seguridad

14

Después de actualizar a macOS Catalina, mi proyecto ya no se compilará. Esto se debe a que Catalina cree que los binarios en 'android-ndk-r17c' no son de un desarrollador de confianza.

Recibes mensajes como: "" ld "no se puede abrir porque no se puede verificar el desarrollador". "macOS no puede verificar que esta aplicación esté libre de malware"

Tengo que usar el NDK anterior debido a problemas con el SDK de la biblioteca nativa de openCV y los NDK más nuevos. Están trabajando en ello, pero el SDK más nuevo aún no es lo suficientemente estable para mí.

Pude evitar "clang" y "clang ++" no poder trabajar yendo al panel de seguridad y haciendo clic en "Permitir de todos modos" en las alertas de seguridad. Sin embargo, al intentar esto con "Id", puedo pasar la primera advertencia haciendo clic en "Permitir de todos modos", pero parece que se llama posteriormente y en la llamada posterior no tengo la opción de permitir que se abra.

No hay código realmente. Solo tengo (y he tenido durante mucho tiempo) referencia de Android Studio NDK apuntando al viejo NDK a través de la configuración.

En IDE de NDK, no puede cargar "Id":

"" Ld "no se puede abrir porque no se puede verificar el desarrollador". "macOS no puede verificar que esta aplicación esté libre de malware"

Rata de acero inoxidable
fuente
Ver github.com/android/ndk/issues/1060 . Sin embargo, no sé por qué solo pudiste permitir algunos de ellos. Funcionó bien para mí.
Dan Albert

Respuestas:

21

Acabo de encontrar la solución.

Es un proceso tedioso pero:

  1. MacOS: abrir las preferencias del sistema
  2. MacOS: vaya a Seguridad y privacidad (mantenga este abierto, lo necesitará durante todo el proceso)
  3. Unidad: Ve y construye tu proyecto. Cuando aparezca el error, haga clic en "Cancelar"
  4. MacOS: en la ventana Seguridad y privacidad, vaya y haga clic en "Permitir" cerca del error "clang", para que el sistema MacOS reconozca la aplicación y la utilice.
  5. El error aparecerá nuevamente, pero esta vez le pedirá que lo "abra". Haga clic en "Abrir"
  6. La compilación fallará varias veces debido a varias dependencias, pero fallará con diferentes archivos que deberá permitir como en los pasos anteriores.
  7. Construye nuevamente tu proyecto.
  8. Si falla, repita los pasos hasta que deje de fallar. Cada error que obtenga con el archivo que no se reconoce será diferente cada vez
Mudassar Ashraf
fuente
2
adicional: si lo hizo sudo spctl --master-disableantes, existen 3 opciones debajo de 'Permitir descarga de aplicaciones desde:', debe seleccionar la segunda llamada 'Tienda de aplicaciones y desarrolladores identificados' en el paso 4, para que pueda ver 'Permitir' y 'clang' error.
linjiang
Agregue a las instrucciones que necesita estar en la pestaña General de Seguridad y privacidad para ver el mensaje de seguridad.
Steve
5

Para permitir las aplicaciones descargadas de Anywhere en MacOs Catalana, haga esto:

sudo spctl --master-disable
YuryP
fuente
¿Esto realmente hace algo? Todavía no puedo ejecutar nada
Luz
Esto puede eliminar algunos pasos ... por lo que debemos presionar "permitir" y luego "abrir" ... de lo contrario, se debe permitir que cada libra utilizada por cada herramienta sea una manzana de pesadilla. vamos a hacerlo por carpeta base ..
Paschalis
Entonces, para que aparezca "En cualquier lugar", debe dejar el módulo Seguridad y privacidad en Configuración. Sin embargo, ahora sigo recibiendo el mensaje "no se puede verificar", pero no hay permiso ni abierto en ningún lado.
UserOneFourTwo
3

Me gustaría agregar a la respuesta de Mudassar Ashraf.

Si no ve la opción " Permitir " después de hacer clic en " Cancelar ", cambie "Permitir aplicaciones descargadas de" en la ventana Seguridad a " App Store y desarrolladores identificados ". Esto de alguna manera hará que aparezca el botón " Permitir ". Luego vuelva a cambiar a «En cualquier lugar ». Repita si es necesario.

Sergey Manvelov
fuente
1

Si por alguna razón en su ventana de Seguridad y Privacidad botón de permitir que duerma aparecerá a continuación, basta con mover el NDK al directorio diferente y tratar todo el proceso de nuevo.

RadekJ
fuente