Developing web application using Objective-C on FreeBSD
Asked Answered
A

5

7

I saw that the Clang 3.0 port includes Objective-C as a development language, and furthermore, I also found this port "libobjc2-1.6" (Replacement Objective-C runtime supporting Obj-C 2 features) and "ofc-0.8.1_5" (The Objective-C Foundation Classes library).

Let's say we are considering to use Objective-C on FreeBSD to develop a web-based application (vs. using Java and running it on Tomcat/Glassfish), how do we approach it?

Does Objective-C development actually work on FreeBSD (9.0)?

What are the things (frameworks/library) to download and install?

What IDE?

As I mentioned that let's say we intend to develop a web application, what are the library?/libraries (We also saw that there is "GNUstepWeb" - successor to WebObjects - is this the web library we should consider? Is this the ONLY ONE - what about other alternatives? Further, can GNUstep/GNUstepWeb compile under Clang 3.0 or make use of those Objective-C ports ("libobjc2-1.6" and "ofc-0.8.1_5") mentioned above? Are those ports relavant?

Has anyone successfully done a web application project development on FreeBSD using Objective-C (and deployed on FreeBSD)?

Note: Web-based applications means it takes in HTTP (RESTful) calls and talks to a database (for traditional and/or NoSQL databases).

Achene answered 16/2, 2012 at 8:13 Comment(2)
I just saw that it is possible to build GNUstep with clang: wiki.gnustep.org/index.php/Building_GNUstep_with_ClangAchene
I think the best would be to ask your question in the gnustep-dev ML.Whew
T
1

There is http://cocotron.org, a port (more like re-write) of Apple's runtime for Objective-C.

I still could advice against using ObjC for web stack. I did that previously, and I must say that it involves a big chunk of pretty common code that you will need to implement for basic HTTP server functionality.

Also, Cocotron is not really that fast (as a runtime). It's ok for desktop applications, but web world is much more restrictive.

Twobyfour answered 8/8, 2012 at 10:52 Comment(0)
D
1

I am writing a library supporting this using FastCGI to interface the server called CGIKit (https://github.com/xcvista/CGIKit) and it works on GNUstep instead of Cocoatron.

Draggletailed answered 29/8, 2013 at 19:25 Comment(0)
H
0

you may look at sope and sogo http://sope.opengroupware.org/en/build/thirdparty.html

Hummer answered 31/8, 2013 at 18:29 Comment(0)
J
0

Someone seems having success building Objective-C program for FreeBSD 9.x

You don't need to worry about the IDE if you don't mind using Apple. It would be possible to write on Mac, and run on FreeBSD. (personally I think this is the best of both world) IMO, if there's a server OS with Objective-C ready, FreeBSD will be first one.

More serious problem is libraries and frameworks. We don't have much options in Objective-C for web server development even on OSX. But we can wrap existing C/C++ libraries, (just as like many great node.js, Python, Ruby libraries do) and I think we may can get bunch of options with small efforts.

Some people worry about security. And I always wonder how many foundational programs on the network are written in C/C++ and other languages.

Jenelljenelle answered 9/10, 2013 at 16:35 Comment(7)
I doubt that FreeBSD would be the first one. Unless you mean Objective-C 2.0 ready (of course, the runtime's author is in FreeBSD Core Team). ie. since most Objective-C web libraries for GNUstep world were developed during the GCC time.Hummer
@FredFrith-MacDonald Ah yeah. You're right. I forgot legacy runtime. And I don't think we can use legacy GNUstep libraries as is. So if it becomes possible, I will happily write my own.Jenelljenelle
Those old frameworks are in production and they may need some patches or may not. They are well maintained so I have no idea why you'd describe them as 'legacy'. In what basis that you think you cannot use those libraries? You didn't even try, did you?Hummer
@FredFrith-MacDonald It's because you told me those frameworks are depending on legacy (GCC) runtime, so I thought it's not been updated. But if they gets update for modern runtime, there's no technical reason not to use them.Jenelljenelle
@FredFrith-MacDonald This is out of context, but the license also would be considered for commercial product. I tend to avoid GPL'ed software to avoid any possible legal issue. Anyway, this is more like to political or legal issue than technical.Jenelljenelle
I didn't tell you they were depending on old runtime. And LGPL is not GPL so it's a good start to make sure you know they are totally different.Hummer
@FredFrith-MacDonald OK. I see. About the legacy stuff, that's my mistake. For the license, (IMO) LGPL is conditional offering for close-source product. And I fear the unknown future situation that I cannot satisfy the condition, so all my investment on the code suddenly becomes unusable.Jenelljenelle
E
0

In his blog post “Using Objective-C on the server” Graham Lee describes how to set up a minimal GNUStep-WebApp. Obviously, the build instruction for GNUstep-make would differ, but other than that this seems like a nice starting point.

He wrote several other posts (jQuery, AJAX) further exploring GSW.

Edi answered 13/1, 2014 at 17:54 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.