1 votos

no válido para su uso en el proceso: el archivo asignado no tiene ID de equipo y no es un binario de plataforma (¿firmado con identidad personalizada o adhoc?)

Estoy intentando ejecutar una aplicación de terceros a través del IDE Spyder Python. Soy capaz de importar el código y se ejecuta a través de la línea de comandos utilizando la aplicación Terminal, pero Spyder parece ser más cuidadoso acerca de los permisos de firma de código, y no se ejecutará el código. El error inicial decía que el código no estaba firmado en absoluto. El error era

'/path/libmylibrary.dylib' not valid for use in process: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed.)

Al entrar codesign -d -v /path/libmylibrary.dylib Pude ver el estado de la firma del código, que decía que, efectivamente, el código no estaba firmado. Entonces firmé el código introduciendo codesign -s - /path/libmylibrary.dylib y a continuación se firmó el código. Sin embargo, seguía habiendo problemas. La ejecución en este punto dio lugar al nuevo error

'/path/libmylibrary.dylib' not valid for use in process: mapped file has no Team ID and is not a platform binary (signed with custom identity or adhoc?)

Efectivamente, sigue siendo correcto. La biblioteca TeamIdentifier sigue siendo igual a "not set". Pero aquí, estoy atascado. No puedo encontrar ninguna manera de establecer este valor a cualquier otra cosa. Cualquier consejo sobre cómo solucionar esto sería muy apreciado.

Detalles: El ordenador es un MacBook Pro 2022 M1 que ejecuta OS 12.6 y Spyder es la versión 5.3.3. Spyder dice que está ejecutando Python 3.9.5, pero si ejecuto Python desde la línea de comandos, entonces es la versión 3.10.

0voto

user2419194 Puntos 11

Por fin he solucionado el problema. @mmmmmm tenía razón en que el problema tenía que ver con las versiones de Python y no con la firma de código en absoluto.

En Spyder, configure los directorios de biblioteca con el gestor Herramientas/PYTHONPATH. Deseleccioné la ruta Spyder.app porque causaba conflictos con mi ruta de usuario. Encontré la ruta de usuario que quería iniciando Python en una línea de comandos, importando un archivo e introduciendo myfile.__file__ .

Además, configure la versión de Python en Spyder con Preferencias/Intérprete Python. Encontré qué Python quería introduciendo which python en la línea de comandos. Spyder muestra qué Python está utilizando en la parte inferior de la ventana.

Por último, tuve que reiniciar Spyder para que estos cambios surtieran efecto. Nunca toqué la firma de código.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X