I'm porting a windows WebRTC sytem tray application to osx. They're building with gyp/ninja - so is it possible to do a status bar app without XCode - or convert one for building with these tools?
I'd say, "sure, it's possible" in the same way I can say "yes it's possible to travel to the moon".
It might just be easier, and probably more reliable, to build & test it with Xcode than some other tools. Depends on your skill level. You're going to have to test it on a Mac anyways. Sorry it's a generic answer.
Yes, many coders write Objective-C/C in other editors and then feed the code to Apple's compiler/linker( clang et. al. ) all without using Xcode. Anything you can write in Xcode ( including the GUI in Interface Builder ) can be written in code. If you have smart makefiles everything can be run from the command line in Terminal.app. YMMV.
A little more specificity from the OP would facilitate a similar response. GIGO.
I have to admit I'm completely new to osx and also building from the command line in general.
Most WebRTC devs now use gyp/ninja on osx (shorter build cycles) and my understanding is XCode probably won't be maintained for much longer.
I set up a basic gyp (cross platform build representation) file, specifying the input files. That's fed to ninja, which is using clang. Compiler flags can also be specified via gyp. The trouble starts when looking at the XCode build log. How can I suss out the relevant flags? Also clang is called 4 times.
So, without any configuration, ninja errs with
Code:
error: property 'window' requires method 'setWindow:' to be defined - use @synthesize, @dynamic or provide a method implementation in this class implementation.
(Sry, no idea about Objective-C also).
I've attached the project and logs.
Thanks for any hints guys.
Didn't look at the log. The Xcode/Objective-C project is heading in the right direction but not there yet. My suggestion: Watch Lucas' screencast demonstrating a basic status bar app<https://www.youtube.com/watch?v=PMmjfCYNqW0&index=33&list=PLE83F832121568D36 >. He tends to talk too much but the level is good for newbie Objective-C coders. Following his recipe should make it easier to create a status bar app( YMMV ).
Won't be maintained for much longer by who? Apple? Apple will probably maintain Xcode until the end of OS X and iOS, and although I can imagine OS X receiving its final update before the end of the decade, I expect iOS will continue to exist into the next decade at least. I won't try making predictions about technology beyond that point.
Anyway, the best approach is probably using XCode for the UI part and linking to the WebRTC code (which is branched off, but can be built with gyp/ninja).
I'm not sure though a statusbar app is ideal - it has to process a continuous audio stream - like skype. What to use in place of the event loop? Timer? Or better use a Service or Daemon?