我有一款刚进入测试版的软件。日语版的Mac OS X运行良好,但德国beta测试人员收到的消息松散地转换为“无法运行程序,因为此类Mac计算机不支持该程序。”
只有英特尔和10.6,但这是beta测试人员所拥有的。他告诉我错误不应该与本地化有关(.nib只是英文版,但实际上程序中没有文字可以说,而且他会说英文),但Mac并没有给我任何更多的信息。据我所知。
我知道这不是太多的信息,但我知道如何获取这些信息。
什么会导致这类问题?我可以让我的Beta测试人员获得更多信息吗?
答案 0 :(得分:9)
在intel上,程序可以编译为32位(i386)和64位(X86_64)版本。可能是你的beta测试人员有一个旧的intel盒子,只运行32位版本的操作系统,而你只编译了64位。 (相反,操作系统支持)
您可以使用file
命令检查编译到二进制文件中的可用体系结构。即
% file Program.app/Contents/MacOS/Program
如果在Dashboard.app上进行检查,则会得到以下输出
% file /Applications/Dashboard.app/Contents/MacOS/Dashboard
/Applications/Dashboar…: Mach-O universal binary with 3 architectures
/Applications/Dashboar… (for architecture x86_64):Mach-O 64-bit executable x86_64
/Applications/Dashboar… (for architecture i386): Mach-O executable i386
/Applications/Dashboar… (for architecture ppc7400)Mach-O executable ppc