|
From: | Ivan Vučica |
Subject: | Re: PlayingSound |
Date: | Sun, 2 Sep 2012 03:09:56 +0200 |
Hi Steve! On 2. 9. 2012., at 02:53, Steve Van Voorst <svanvoorst@hughes.net> wrote:
No -- you do not! libobjc2 from Debian and Ubuntu repositories is actually GCC libobjc; the 2 is in the name due to the way Debian folks name the packages. What you want is GNUstep libobjc2. http://svn.gna.org/svn/gnustep/libs/libobjc2/trunk/ While at it, you may want to use all of GNUstep from the Subversion repositories.
I'm now annoying even myself by again shamelessly plugging my script ;) but here: If you're using Ubuntu 12.04, this will build clang and GNUstep for you. If you want, you can remove steps that check-out LLVM and Clang from their repositories as well as the steps that build them. Building clang is the lengthiest part of the process, and I guess clang from Ubuntu repositories should work okay. However, whenever I need to set up GNUstep, I do it the way it's done in the script -- I have no idea if using stock clang from Ubuntu will work or if there is going to be any problems. (Plus, clang the script builds is development version, so it may have its own problems.) After you're done running the script you'll also want to set up .bash_profile as outlined in the script itself and in the README. Basically, you want to add path to clang to the PATH, and you want to "source" the GNUstep settings into bash. You know, the line: . /usr/GNUstep/System/Library/Makefiles/GNUstep.sh When you're done, you'll have approximately the setup that I have, based on libobjc2, clang trunk, and latest GNUstep. If you have any trouble running the script, please tell me; and if you'll try it using Ubuntu-distributed clang, I'd love to know how that goes, too (especially if you have a patch for the script). What I can tell you right away is that not everything will work even with latest SVN revision. That's only to be expected: only so many APIs can be reimplemented with the manpower GNUstep has. Core Data, Core Graphics and Core Animation are partially implemented; e.g. from what I can tell Core Data doesn't really have persistence in it (but I may be wrong). Anything that doesn't work is probably a bug, and if you can patch it or find a solution so it can easily be patched, it's easier to get it in the codebase. For example, your information on NSBeep() issues is helpful. I'm not a contributor into -gui, but patching NSBeep() using NSSound sounds reasonable, and unless someone objects, so I may end up doing it. (Robert's idea of having a setting for and defaulting to current behavior is awesome.) |
[Prev in Thread] | Current Thread | [Next in Thread] |