使用eclipse C ++在OSX上创建应用程序包

时间:2011-02-27 02:20:29

标签: c++ eclipse xcode makefile debugging

我使用带有C / C ++插件的Eclipse编译了一个项目(使用http://libcinder.org库,它的工作非常好。 排序......

这是一个窗口化的应用程序,opengl正确地重绘屏幕,鼠标事件是正确的等等。但是,我只能从终端运行应用程序,否则当我尝试点击调试时我可以看到我的控制台语句但是没有窗口可以说。

当我从应用程序输出CWD时,它似乎认为它正在从我的用户目录运行。

如何使这个应用程序看起来更像'mac like',特别是当你右键单击mac应用程序时,你可以查看它的内容,并能够加载相对于应用程序可执行文件的文件。

此外,任何关于为什么在eclipse中通过调试器启动时没有出现的见解也会有所帮助。

我已将此项目放在一起,以供其他可能在此处发现有用的人使用: https://github.com/onedayitwillmake/EclipseLovesCinder

2 个答案:

答案 0 :(得分:3)

嗯。这是一个架构问题。我不知道Eclipse通常如何捆绑资源,但它们不使用OSX内置的应用程序包体系结构。

Here's the Apple developer docs on NSBundle. Start your reading here!

答案 1 :(得分:2)

显然,这只是创建目录的问题。 我在这个页面上找到了一些很好的信息: http://webcache.googleusercontent.com/search?q=cache:NUzzPvEcP04J:max.berger.name/howto/wxWidgets/wxWidgets_Eclipse.jsp+application+bundle+ $ {BuildArtifactFileName}&安培; CD = 1&安培; HL = EN&安培; CT = clnk&安培; GL = US&安培;源= www.google.com

我在项目中特别使用它,C / C ++ Build - >设置 - > BuildSteps - >后期构建步骤:

所有一行,有;他们之间 mkdir -p ${BuildArtifactFileName}.app/Contents/MacOS ;
mv ${BuildArtifactFileName} ${BuildArtifactFileName}.app/Contents/MacOS/ ;
cp -rf ../Resources ${BuildArtifactFileName}.app/Contents/Resources ;
cp -rf ../Resources/Info.plist ${BuildArtifactFileName}.app/Contents/Info.plist

这将创建目录结构,并将projects / resources /文件夹中的所有内容复制到应用程序包资源目录。

我为回答我自己的问题而道歉

相关问题