Object-C-Ubuntu搭配ObjectC编译环…

没钱买Mac又想学OC的话,只能自己尝试在Ubuntu下搭环境了,自己搜了几篇文章,折腾了一会才弄好,感觉都不是很全,缺少东西。

安装

  • build-essential
  • gobjc
  • gobjc++
  • gnustep-devel

sudo apt-get install搞定

写个hello world的程序啊

#import
int main(int argc, const char argv[]) {
NSAutoreleasePool 
pool = [[NSAutoreleasePool alloc] init];
NSLog(@"Hello world\n");
[pool drain];
return 0;
}

保存为hello.m就行了

现在来编译

gcc hello.m `gnustep-config --objc-flags` -lgnustep-base -o hello

记得上面的不是单引号,是`就是小波浪那个键

下面会出现三个文件hello.m hello.d hello
然后执行./hello就行了
不过我出现了几次错误,一次是程序报错,原来输入@符号时候用了中文的
还有一个是
/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../lib/libgnustep-base.so: undefined reference to `gzseek64@ZLIB_1.2.3.3'
这个错误我找了半天,才发现是因为少了zlib-devel
可以直接sudo apt-get install
名字现在是zlib1g-dev了吧,然后再有别的错误就不知道了

Object-C-Ubuntu搭配ObjectC编译环境

好吧,我忘了一件事情,作为程序员啊,写个脚本么,,不然编译每次输入好长很麻烦的。

01 #!/bin/bash
02 ##########Setup for Object-C ##############
03 SOURCE=$1
04 TARGET=$2
05 
06 gcc ${SOURCE} `gnustep-config --objc-flags` -lgnustep-base -o ${TARGET}
07 
08 if [ ${SHELL} = "/bin/bash" ]then
09     echo "your login shell is bash"
10 else
11     echo "is not bash"
12 fi

保存成mac.sh文件,然后拷贝到/usr/bin下面,加上执行权限chmod +x mac.sh然后就可以了

以后编译就 mac.sh hello.m hello

就可以了~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值