2011-03-30 66 views
1

我正在尝试制作mac应用程序包。它被捆绑在一个shell文件中。该结构是这样的:绑定mac应用程序的问题

App 
    Contents 
     Info.plist 
      App.command 
     MacOS 
     Resources 
      App.icns 

然而,当我双击应用程序包,它显示了以下提示:

To open classroom.command, you need to install Rosetta. Would you like to install it now?

看来,我的应用程序包不是基于Intel 。但它没有意义。 Shell脚本与什么平台无关?

我通过获取.app根文件夹中的信息对其进行了验证。我可以看到“Kind”是“Application”。而在其他可启动的应用程序中,我看到“Kind”是“Application(Intel)”。有没有我从Info.plist中错过的东西?

+1

我在unix中是这样一个noob。 我忘了告诉我使用的是什么shell环境。我将 '#!/ bin/sh'添加到文件的顶部,现在它工作了。 不过,我还是很好奇。在shell脚本中,'#!/ bin/sh'行如何与认为这个应用程序是非intel有关? – hytparadisee 2011-03-30 11:59:58

+0

非常感谢您添加该评论,这让我意识到我在#!/ bin/bash之前有了额外的空间。正如你所说,为什么OSX认为该应用程序是用于PowerPC的,我不知道。也不知道我应该怎么弄出来的!无论如何,很多很多谢谢,最后投票你的问题。 – 2012-03-27 12:16:23

回答

-1

Rosetta是一个软件,通过它可以在Intel Mac上运行PowerPC代码。播种取决于你的进程,你可能需要安装它来运行应用程序。

here is the full explanation