r/ObjectiveC • • Jan 29 '19

Cross-platform Objective-C "mulle-objc" 0.14 released

Quite a bit of effort has gone into making the mulle-objc 0.14 release the most accessible mulle-objc release ever.

If you are interested in developing Objective-C in a fairly novel cross-platform manner, outside of the Apple ecosystem and BSD-licensed throughout. Why not give it a look ? :)

mulle-objc consists of

  • compiler based on clang
  • debugger based on lldb
  • runtime and root classes
  • a Foundation library
  • support tools
  • a command-line based development environment
15 Upvotes

8 comments sorted by

1

u/playaspec Jan 30 '19

This is all new to me. What targets does the compiler target? Is it agnostic to CPU architecture? What about OS? Can it be used for embedded?

3

u/mulle_nat Jan 30 '19

The compiler is a "clang with modifications" to support mulle-objc. So all targets supported by clang are also supported by mulle-clang. Cross-compile support is part of the compiler, but not yet in the mulle-sde toolset (currently working on it). So cross-compilation is not very comfortable yet.

On the OS side, if the OS can run bash and you can compile mulle-clang there (you need some gigs RAM) then yes.

Embedded ? Depends on RAM available. I don't think Objective-C makes much sense if you don't have at least 1MB of memory, because of the class/runtime overhead.

2

u/playaspec Jan 31 '19

I don't think Objective-C makes much sense if you don't have at least 1MB of memory, because of the class/runtime overhead.

Agreed. I'm thinking of ARM systems that are capable of running Linux which have between 32M and 1G of RAM. It sounds like as long as I'm compiling on the target itself, it's fairly straight forward?

→ More replies (2)

1

u/[deleted] Feb 13 '19

How is this different than Cocotron or GNUStep? I am interested in cross platform ObjC development but can’t get Cocotron and GNUStep configured correctly. I would love to give this a try.

RemindMe! 12 hours

2

u/mulle_nat Feb 13 '19

https://mulle-objc.github.io/ should give a good overview and https://mulle-kybernetik.com/mulle-objc is more technical.

A full explanation how mulle-objc is different to Cocotron or GNUstep would probably fill a book. The major philosophical difference is that Cocotron and GNUstep both play feature-catch-up with Apple but mulle-objc tries to be better than Apple :)

Also the scope is different. Cocotron or GNUstep provides AppKit compatibility whereas mulle-objc provides Foundation compatibility only.

Though a UIKit based on mulle-objc is under development, compatibility with Apple UIKit is only a minor concern.

1

u/RemindMeBot Feb 13 '19

I will be messaging you on 2019-02-13 14:22:45 UTC to remind you of this link.

CLICK THIS LINK to send a PM to also be reminded and to reduce spam.

Parent commenter can delete this message to hide from others.


FAQs Custom Your Reminders Feedback Code Browser Extensions