Ubuntu-Linux的Objective-C环境设置

3 installation ubuntu objective-c

我没有用于ios开发的Mac机器.现在我处于学习阶段,想要在Linux上启动ios开发.那么可以在Linux环境下运行Objective-C代码吗?

Pra*_*til 10

是的,在Ubuntu中可以通过以下方式运行Objective-C代码:

在Ubuntu中,使用以下命令安装GNU Objective-C编译器和Gnu-step开发库::

sudo apt-get –y install gobjc gnustep gnustep-devel
Run Code Online (Sandbox Code Playgroud)

现在输入下面给出的程序并保存扩展名为.m的文件.

比如说, hello.m

// 'Hello World' Program in Objective-C
#import <Foundation/Foundation.h>

int main (int argc, const char * argv[])
{
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    NSLog (@"Hello, World!");
    [pool drain];
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

现在使用以下命令编译程序:

gcc $(gnustep-config --objc-flags) -o hello hello.m $(gnustep-config --base-libs)
Run Code Online (Sandbox Code Playgroud)

或者您可以编写此示例Makefile:

CC := gcc
GNUSTEP_LIBS = $(shell gnustep-config --base-libs)
GNUSTEP_FLAGS = $(shell gnustep-config --objc-flags)

.PHONY = clean all

PROGS = hello class_hello

all: $(PROGS)

%.o: %.m
    $(CC) $(GNUSTEP_FLAGS) -c $^

hello: hello.o
    $(CC) -o $@ $^ $(GNUSTEP_LIBS)

clean: 
    rm $(PROGS) *.o
Run Code Online (Sandbox Code Playgroud)

并运行:

make
Run Code Online (Sandbox Code Playgroud)

现在使用以下命令运行可执行文件:

./hello
Run Code Online (Sandbox Code Playgroud)

输出 - > 2014-11-14 15:47:32.628 hello[2786] Hello, World!

输出的格式是这样的 -

<DATE> <TIME> <NAME  OF THE EXECUTABLE[NUMBER]> <ACTUAL OUTPUT>
Run Code Online (Sandbox Code Playgroud)