discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: PlayingSound


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:

<<Try installing libobjc2 from GNUstep repositories, then recompiling and reinstalling all other parts of GNUstep you set up: -make, -base, -gui, -back and whatever other GNUstep component you use. (That also means you probably don't want to be using packages from Ubuntu repositories, in case you do use them.)>>

I have already installed libobjc2 by using the Ubuntu repository. 

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 am unable to tell if it is actually be used.  I really would like to be able to touch the innards of my Linux box and build everything from the ground up, but I am just not that savvy at this point; I'm new to the Linux/gnustep game.  That's one of the nice things about Ubuntu; most things actually work.  Unfortunately, my experiences with several other distributions were not so pleasant.  Since gnustep allows cross-platform development I am anxious to see if I can port my Mac demos to Linux.  So far it looks promising, although not everything is working so far.

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.)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]