Ubuntu下如何安装并使用Objective-C

Objective-C是本人用过的最佳类C、面向对象的编程语言。Objective-C与标准C完美兼容,而在此基础上又加上了将面向对象的基础概念诠释得最好的SmallTalk元素,使得它既简洁、又灵活,绝对是做商业化项目的首先编程语言工具。它跟Java相比更接近底层,你可以直接在里面写内联汇编或直接与汇编文件一起连接(因为它就是C语言,在C语言基础上扩展了SmallTalk的消息机制与OO机制)。与C++相比,它显然又简洁许多,C++里的神马多继承了、虚拟继承了,坑之多数不尽。Objective-C非常容易上手,而且语法也不复杂,所以不会导致程序员出现过于良莠不齐的现象,整个项目维护起来也十分容易。

因此,不管是在Unix/Linux下还是在OS X/iOS下,使用Objective-C编程就是一种享受。下面我将为大家介绍如何在最新版本的 Ubuntu下(14.10)来安装、编译Objective-C。

由于,Ubuntu已经有了对Objective-C的编译器(gobjc)的安装,因此安装gobjc的步骤可省,如果你用的Ubuntu的旁系系统没有安装可以使用以下命令进行安装——

sudo apt-get install gobjc

接下来,我们主要就是对gnustep库的安装。对OS X或iOS编程过的朋友应该对Foundation库不陌生吧,这个就是在gnustep库里的,如果不装此库,你连NSObject都用不了,呼呼~先安装gnustep

sudo apt-get install gnustep

完成之后,我们再安装gnustep-devel

sudo apt-get install gnustep-devel

这样整个需要安装的环境都安装好了。我们下面就可以写段代码进行编译了。

在编译之前,我们进入 /usr/share/GNUstep/Makefiles 目录,来对编译环境进行设置,在当前控制台(terminal)执行:

sudo bash /usr/share/GNUstep/Makefiles/GNUstep.sh

这样,当前控制台的GNUStep的编译环境就建立好了。然后我们准备做个项目工程,可以建立一个文件夹。然后在里面先建立一个main.m文件:

#import <Foundation/Foundation.h>

int main(void)
{
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];    

    NSLog(@"Hello, world!");

    unichar c = u‘加‘;

    NSLog(@"The character is: %C", c);

    [pool drain];
}

之后,我们创建一个make文件,命名为:GNUmakefile

GNUSTEP_MAKEFILES = /usr/share/GNUstep/Makefiles

include $(GNUSTEP_MAKEFILES)/common.make

ADDITIONAL_FLAGS += -std=gnu11

TOOL_NAME = test
test_OBJC_FILES = main.m

include $(GNUSTEP_MAKEFILES)/tool.make

由于我们在源代码中使用了C11标准中才引入的Unicode前缀字面量表达式——u‘加‘,表示一个UTF-16字符,因此我们在GNUmakefile中也加入了-std=gnu11这个编译选项来使得编译器使用最新的C11标准与GNU规范语法扩展。

这里要注意的是,对于其它Linux版本的系统,GNUStep的默认安装路径可能不是在/usr/share/之中,因此需要根据当前GNUStep/Makefiles的路径对GNUSTEP_MAKEFILES进行设置。而且这个变量必须在include之前定义好。

而下面的TOOL_NAME指定了make之后最终的目标可执行文件名。这里命名为test。

完了之后,如果我们之前已经执行过GNUstep.sh,那么可以直接敲make,然后回车。工程即构建完成。如果有“gcc: error trying to exec ‘cc1obj‘: execvp: No such file or directory”之类的错误,那么说明还需要安装gobjc。

下面提供其它参考链接:

http://www.techotopia.com/index.php/Installing_and_Using_GNUstep_and_Objective-C_on_Linux

http://www.gnustep.org/resources/documentation/Developer/Base/ProgrammingManual/manual_1.html#SEC11

这里注意,对于第一个链接中,如果直接在命令行敲gcc,是无法成功通过连接的,因为gnustep的库都找不到。所以最好的方式还是通过利用makefile来解决问题,呼呼~

时间: 2024-10-27 07:21:11

Ubuntu下如何安装并使用Objective-C的相关文章

ubuntu下docker安装与版本升级

ubuntu 下docker安装与版本升级 一.系统环境 系统:ubuntu-server 14.04 x86_64 内核:3.13.0-32-generic 二.Docker安装 --------------------------------------------------------------------------------- 要想安装最新版本的Docker需要使用Docker源来安装 $ sudo su - root # apt-get -y installapt-transp

ubuntu下git安装及使用

ssh目录在etc/ssh下 如何在本地使用git http://jingyan.baidu.com/album/295430f1c62c900c7e0050fd.html?picindex=1 参考:1. ubuntu下git安装及使用 http://www.cnblogs.com/jackge/archive/2013/08/17/3264801.html 2. 多 SSH Key 管理技巧与 Git 多账户登录问题 http://blog.csdn.net/forlong401/artic

Ubuntu下成功安装QQ2013

阳光小强最近用Win8系统感觉特别不爽,中午果断换了一个win7系统,又想着能不能搞个双系统(最近在看一些linux东西),于是就开始整起来.结果并不好,linux虽然整好了,但是硬盘全部格式化了,当时的心情是即喜又悲啊!倒腾了半天linux感觉蛮不错的,比较遗憾的是没有QQ,于是就就有了Ubuntu下的Linux安装.下面直接进入正题: 腾讯官方提供的Linux版本QQ: 地址:http://im.qq.com/qq/linux/download.shtml 于是阳光小强就下载了DEB包使用d

Ubuntu 下Eclipse 安装SVN

如果尚未安装Eclipse,先安装:也可以直接下载Google提供的ADT Bundle. sudo apt-get install eclipse 安装Subversion sudo apt-get install subversion 安装Subversion在Eclipse上的插件 Get the Java bindings for Subversion: sudo apt-get install libsvn-java 现在已经做好安装插件的准备. 打开Eclipse: 进入Help -

Ubuntu下手动安装Nvidia显卡驱动

1. 下载最新版的nVidia驱动. http://www.nvidia.com/page/drivers.html 2.编辑blacklist.conf. sudo gedit /etc/modprobe.d/blacklist.conf 添加以下部分并保存: blacklist vga16fb blacklist nouveau blacklist rivafb blacklist nvidiafb blacklist rivatv (这里有一行空格) 3. 删除之前所安装的nVidia驱动

snort简介以及在Ubuntu下的安装

一.简介 Snort是一套开放源代码的网络入侵预防软件与网络入侵检测软件.Snort使用了以侦测签章(signature-based)与通信协议的侦测方法.Snort是一个免费的IDS(入侵监测系统)软件.它的一些源代码是从著名的tcpdump软件发展而来的.它是一个基于libpcap包的网络监控软件,可以作为一个十分有效的网络入侵监测系统.它能够监测多种网络攻击和探测,例如:缓冲器溢出攻击,端口扫描,CGI攻击,SMB探测等等.Snort具有实时的告警能力,将告警记入一个特别的告警文件--系统

Ubuntu下fossolgy安装步骤

Ubuntu下fossolgy安装步骤: 需先安装apache2(步骤略) # vi /etc/apt/sources.list deb http://fossology.org/release/2.6.2/Ubuntu/ 12.04  contrib :wq # apt-get update # apt-get install fossolgy 会自动安装apache-php5及postgresql  (记得修改postgres账号密码) 默认安装路径: /etc/fossology./usr

Ubuntu下编译安装QEMU

Ubuntu下编译安装QEMU 由于环境需求,今天在ubuntu14.04的环境下手动编译安装了QEMU2.1.2. QEMU下载地址:http://wiki.qemu-project.org/download/qemu-2.1.2.tar.bz2 具体下载及解压步骤这里就不在赘述了,主要就是说下环境准备的一些依赖包,编译QEMU最重要的就是gcc,所以我们要先把gcc安装上. [email protected]:~# apt-get install gcc-3.4 cpp-3.4 安装QEMU

ubuntu 下初步安装配置apache2

linux下安装配置apache server.(非管理员命令,顾在绝大部分命令前加:sudo) 先是尝试了一下,直接命令行下,敲入命令: sudo apt-get install apache2 就能安装.去到官网,说可以直接下载源码编译安装的.但是这里没有尝试(因为已经用apt装好啦-). 用apt安装好的apache,默认将配置文件放在/etc/apache2/ 下. http页面默认放在/var/www/ 下. 启动停止脚本为: /etc/init.d/apache2 因此: 启动命令为

Torch7在Ubuntu下的安装与配置

Torch7的本系列教程的主要目的是介绍Torch的入门使用.今天首先分享一下Torch7的安装.(在Ubuntu14.04安装torch7) 为什么选择Torch Torch的目标是在建立科学算法的同时,要有最大的灵活性和速度,而这一过程非常简单.Torch拥有一个大社区驱动包的生态系统,涉及机器学习.计算机视觉.信号处理.并行处理.图像.视频.音频和网络等,并建立在Lua社区基础之上. Torch的核心是流行的神经网络和优化库,它们易于使用,同时在实现复杂的神经网络拓扑结构时具有最大的灵活性