Eu tenho um aplicativo que existe apenas uma versão de 32 bits. Para usá-lo, eu costumava pressionar 2
& 3
juntos antes de inicializar o Mac, para que ele funcione no modo 32 bits. No entanto, alguns aplicativos (versão de 64 bits que foi instalada anteriormente) sempre travam nesse modo.
Por acaso vi uma solução que executa o aplicativo de 32 bits no sistema de 64 bits:
arch -i386 theApp.app
Mas eu tentei com arch: /Applications/theApp.app isn't executable
erro. Eu verifiquei a permissão do arquivo e ela mostrou drwxrwxr-x
, deve ser executável, não é?
Edição : Como @ gd1 disse, theApp.app é uma pasta (é chamada de pacote no OSX, eu acho) e, portanto, não é executável.
Mas ainda preciso de uma solução alternativa:
como posso executar corretamente meu aplicativo de 32 bits no sistema de 64 bits?
EDIT : Eu posso abrir o aplicativo arch
agora com o comando (obrigado @GordonDavisson):
arch -i386 /Applications/theApp.app/Contents/MacOS/theApp
No entanto, o aplicativo é executado com Components lost
erro, log mostrado abaixo:
Kjuly@MacBook-Pro:/Applications$ arch -i386 闪讯.app/Contents/MacOS/闪讯
2012-01-08 16:17:53.381 闪讯[472:1107] isActive: ioctl to kernel socket error 2 ,No such file or directory
2012-01-08 16:17:53.436 闪讯[472:1107] The AppPath = /Applications/闪讯.app
2012-01-08 16:17:53.437 闪讯[472:1107] The src path = /Applications/Èó™ËÆØ.app/xlpppoe.kext
2012-01-08 16:17:58.892 闪讯[472:1107] Set Driver Ok...
/tmp/xlpppoe.kext failed to load - (libkern/kext) requested architecture/executable not found; check the system/kernel logs for errors or try kextutil(8).
BTW, o 闪讯.app
(eu odeio !! Mas eu preciso ..) é usado para se conectar à rede na minha universidade na China.
EDIT :
Kjuly@MacBook-Pro:~$ file /Applications/闪讯.app/Contents/MacOS/闪讯
/Applications/闪讯.app/Contents/MacOS/闪讯: Mach-O executable i386
e
Kjuly@MacBook-Pro:~$ file /Applications/闪讯.app/xlpppoe.kext/Contents/MacOS/xlpppoe
/Applications/闪讯.app/xlpppoe.kext/Contents/MacOS/xlpppoe: Mach-O object i386
Parece que é apenas de 32 bits e depende do kernel de 32 bits. Estou tão triste. :(
Aqui estão algumas informações que recebi com a ajuda de @GordonDavisson, talvez alguém mais precise.
O DOC mostra alguns métodos para iniciar temporariamente o kernel de 32 bits e usar extensões mais antigas do kernel para software ou hardware de terceiros.
E é sobre "Compatibilidade com o kernel de 64 bits" :
O software de terceiros (como um mecanismo de virtualização) ou o hardware (como uma placa PCIe) que depende de uma extensão do kernel compatível com o Mac OS X Server v10.5 pode não funcionar em Macs que usam o kernel de 64 bits no Mac OS X v10.6. Entre em contato com o fornecedor do software ou hardware para obter uma extensão atualizada do kernel que funcione com o kernel de 64 bits no Mac OS X Server v10.6.
Como solução alternativa, você pode iniciar temporariamente o kernel de 32 bits para usar extensões mais antigas do kernel para seu software ou hardware de terceiros.