0 votos

¿Cómo puedo forzar una instalación de un binario de Intel en una máquina de Apple Silicon? En este caso, MAMP 6.9

Debido a que Oracle no ha lanzado una versión ARM (Apple Silicon) de su Oracle Instant Client (OCI8) me veo obligado a utilizar la versión de Intel de MAMP en mi MacBook Air (M2; 2023) para poder compilar adecuadamente el binario OCI8 (basado en la versión de Intel del Instant Client) a través de Pecl.

De acuerdo, eso no debería ser un gran problema. MAMP básicamente ejecuta Apache, MySQL y PHP, por lo que no debería haber impacto en el rendimiento. La traducción de código de Intel por Rosetta no debería afectar significativamente ni de forma negativa el uso de MAMP en absoluto.

Pero ¿cómo instalo la versión de Intel del binario (MAMP_MAMP_PRO_6.9-Intel-x86.pkg) en mi MacBook Air (M2; 2023)?

Inicio el instalador y recibo este mensaje que efectivamente bloquea la instalación:

¡Se requiere CPU x86_64!

Necesitas un CPU x86 (64 bits) para ejecutar MAMP o MAMP PRO.

introduce la descripción de la imagen aquí

Supongo que podría molestar a un compañero de trabajo para que lo instale en una Mac basada en Intel y luego simplemente copiar la carpeta de MAMP ubicada en /Applications/MAMP a una memoria USB y luego instalar eso en mi MacBook Air?

¿Pero hay alguna forma de forzar al instalador a ignorar la discrepancia de arquitectura de CPU para poder manejar esto por mi cuenta?

1voto

JakeGould Puntos 1926

¡Sí puedes!

Solo tienes que hackear/ parchear el instalador de Intel para ignorar la discrepancia de arquitectura y la instalación continuará como de costumbre.

La base de esta respuesta se encuentra en las instrucciones que existen aquí en esta otra respuesta que se enfoca en los principales instaladores de macOS. La clave es usar pkgutil para expandir el paquete, alterar el script de Distribution y luego usar nuevamente pkgutil para "aplanar" el directorio de nuevo en un paquete.

Todos los pasos asumen que estás trabajando en el mismo directorio que el paquete MAMP_MAMP_PRO_6.9-Intel-x86.pkg.

  1. Descarga el paquete del instalador binario de Intel desde el sitio oficial de MAMP. El enlace de descarga directa está aquí.

  2. Una vez descargado, ejecuta este comando para expandir el paquete en un directorio llamado MAMP_MAMP_PRO_6.9-Intel-x86:

    pkgutil --expand MAMP_MAMP_PRO_6.9-Intel-x86.pkg MAMP_MAMP_PRO_6.9-Intel-x86
  3. Ingresa a ese directorio MAMP_MAMP_PRO_6.9-Intel-x86 y abre el script de Distribution en el editor de texto que prefieras.

  4. Encuentra la función installation_check() que se encuentra alrededor de la línea 222. Elimina o comenta las líneas 228 a 233 que se leen de esta manera; eso es lo que desencadena el mensaje de error de discrepancia de arquitectura:

    if (tResult==false)
    {
        my.result.title = system.localizedString('REQUIREMENT_FAILED_MESSAGE_INSTALLATION_CHECK_1');
        my.result.message = system.localizedString('REQUIREMENT_FAILED_DESCRIPTION_INSTALLATION_CHECK_1');
        my.result.type = 'Fatal';
    }
  5. Guarda el archivo y cierra tu editor de texto.

  6. Elimina el antiguo archivo MAMP_MAMP_PRO_6.9-Intel-x86.pkg.

  7. Luego ejecuta pkgutil con el parámetro flatten para recomprimir el instalador del paquete de la siguiente manera:

    pkgutil --flatten MAMP_MAMP_PRO_6.9-Intel-x86 MAMP_MAMP_PRO_6.9-Intel-x86.pkg
  8. Cuando ese proceso se complete, ahora deberías tener un instalador de Intel de MAMP 6.9 hackeado/ parcheado. Inícialo y deberías ver esto; solo haz clic en Continuar para instalar la versión de Intel de MAMP 6.9 en tu Mac basada en Silicon Apple/ARM: enter image description here

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