discuss-gnustep
[Top][All Lists]
Advanced

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

Re: Which ObjC2.0 features are missing in the latest GCC?


From: Matt Butch
Subject: Re: Which ObjC2.0 features are missing in the latest GCC?
Date: Mon, 25 Nov 2019 12:43:10 -0500



On Nov 25, 2019, at 12:07, Andreas Fink <afink@list.fink.org> wrote:

On 25 Nov 2019, at 14:37, Yavor Doganov <yavor@gnu.org> wrote:

Gregory Casamento wrote:
On Fri, Nov 22, 2019 at 3:01 PM Yavor Doganov <yavor@gnu.org> wrote:
The answer is simple: because there's a lot to lose and nothing to
gain.

This is patently incorrect.  The gain is time and compatibility with
the latest code base.  I laid out the advantages and disadvantages
of this in my previous posting.

There are no advantages for the current GNUstep packages in Debian
which is the main point I was trying to make.  I don't dispute the
fact that dropping support for GCC will simplify things a lot for
you.  At certain cost, of course, which you consider negligible.

* More Applications, more applications means more end users (sort of
chicken and egg thing)

That's purely hypothetical to the extent of being mere speculation.
GNUstep supports Clang and David's runtime for quite some time now,
why there are no more applications?  Why existing GNUstep applications
have not been updated to take advantage of the new features?

I can tell you exactly why. When I tried out GNUstep for the first time to port my OS X apps to Debian, I simply did "apt-get install gnustep" and wanted to compile my code and nothing really worked.
Then it took me several weeks to figure out how to get a working toolchain with libobjc2 and ARC support which my code required. And I am not a newbie. I write code on MacOS since 1994 and Linux since like 1992. The major roadblocks where:

a) the tools which come with Debian where totally useless as it did not support modern Objc2 features which my ported code was using already. And it took a while to even figure that out.
b) the build process is not well documented. You find all kinds of build info out there in the net out of which most are totally outdated and don't work anymore. (this has become a bit better since).
c)  there where some bugs, especially in the linking part which where totally throwing you off the rails and where giving very puzzling information.
d) if you don't pay attention, the old runtime libobjc which comes with gcc gets into your way. And the package is named libobjc4. So go figure that libobjc2 is actually newer...

I can assure you that people who are used to MacOS X and Xcode , 99% of it will run away. They will simply claim GnuStep is not a mature project.

I absolutely agree. Either gnustep in the repo should be up to date with clang, or there should be a PPA. I understand the later is a pain, but the question is not how hard is it but is it worth it to get a better adoption. When I discovered GNUstep to utilize Objective-C on non-Mac platforms I was shocked at how hard it was to set up right. The Ubuntu package was old and didn’t support Objective-C 2.0. And trying to get it working on Objective-C was a pain. I updated the script on the Wiki and there was a bunch of steps. Honestly while I follow along with the project, I don’t do much with it because its so hard to install.

-Matt 

reply via email to

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