On Dec 11, 2008, at 10:07 AM, Shayne Wissler wrote:
Thanks for all the varied answers! It sounds like no one actually knows architecturally what is going on here or why! Is there perhaps some "dissonance" between the UNIX design aspects and the Apple design aspects of OSX?
Actually.... I'd wager that no one has directly answered your question because you haven't told us what you are trying to do. The answers you receiver were correct and equally as vague as your question.
I have a Cocoa application that I am compiling in the traditional UNIX manner using Makefiles and I want to be able to invoke it with command-line arguments and without creating/installing it like traditional OSX apps, as in "x.app/Contents/MacOS/x".
If your makefile is constructing a .app wrapper with the binary and Info.plist located in the correct spots and containing the correct contents, then it should just work.
There is absolutely nothing proprietary or secret about how Xcode builds projects other than the projects and build system are optimized to building Cooca applications; you can do the same thing from makefiles, shell scripts, or manually, if re-inventing that wheel is required (and it sometimes is!).
When I tried the usual thing that works on UNIX, compiling to binary and just running it, my application got mouse events but no keyboard events, among other strange things.
That indicates that you didn't build your app wrapper correctly. Either you didn't correctly set up the Info.plist or your application, itself, isn't starting up the GUI bits correctly.
Or maybe you are trying to eliminate the .app part. Definitely neither supported nor encouraged, but it can be done.
In any case, you didn't provide enough information for anyone to answer a question with architectural specifics.
Is there a way to do this without making some kind of wrapper caller that generates the directory and a script or some such? Or is it wholly frowned upon to do what I'm wanting, and if so, why does it half-work rather than fail with a decent error message?
There is -- see Eric's followup for a clue -- but is wholly frowned upon and will lead to a non-standard user experience.
Without knowing what you have done, it is hard to tell why it half- works.
You can either post more details about what you have done and continue down this path.
Or you could give a bit of information about what you are trying to do and see if someone might suggest a path that is a bit more standard and, subsequently, considerably easier.
In Cocoa, if something seems absurdly hard to do, it is most likely because the something is wrong.
b.bum _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [EMAIL PROTECTED]