龙芯8089D-Debian7 下搭建 Objective-C 编译环境

龙芯8089D-Debian7 下搭建 Objective-C 编译环境

目录


简单说明:Objective-C 的 C 文件后缀为 .m,头文件后缀为 .h,例如咱们在本教程中的例程就是 main.mbash


安装相关文件

须要安装这些包:gccg++gobjcgnustepgnustep-develgnustep-gui-devlibgnustep-base-devui

安装命令很简单:命令行

apt-get install gcc g++ gobjc gnustep gnustep-devel gnustep-gui-dev libgnustep-base-dev

安装完毕以后就能够进行下一步了。code

编译参数说明

不一样发行版的 Linux 下编译 Objective-C 的命令参数略有不一样,在 Debian 下须要这几个参数:教程

`gnustep-config --objc-flags`
-fconstant-string-class=NSConstantString
-lobjc
-lgnustep-base

另外须要指定头文件(include文件)和库文件(lib文件)的位置,在 Debian 下,它们的位置分别为 /usr/include/GNUstep//usr/lib/GNUstep/,参数以下:get

-I /usr/include/GNUstep/
-L /usr/lib/GNUstep/

把上述参数综合起来的编译命令以下:string

gcc `gnustep-config --objc-flags` -fconstant-string-class=NSConstantString -lobjc -lgnustep-base -I /usr/include/GNUstep/ -L /usr/lib/GNUstep/ -o main main.m

可是每次输入这么多参数就有些繁琐了,接下来咱们会把这一长串命令创建一个别名 aliasio

简化命令行参数

创建别名的命令以下:编译

alias objcc='gcc `gnustep-config --objc-flags` -fconstant-string-class=NSConstantString -lobjc -lgnustep-base -I /usr/include/GNUstep/ -L /usr/lib/GNUstep/'

要把这个命令保存到系统的 ~/.bashrc 文件中,很简单,把这条命令拷贝到 .bashrc 中就能够了,而后执行一下:class

source ~/.bashrc

之后编译 Objective-C 文件就能够使用别名 objcc 了,很简单:

objcc -o main main.m

注意:在这条别名命令里,分别使用了 单引号: ''反引号: `` ,千万不要混淆。

实际编译实例

最后就是以一个实际的 Objective-C 程序例子来讲明,下面是咱们的例程 main.m 的内容:

#import <Foundation/Foundation.h>
int main(int argc,const char * argv[])
{
	NSLog(@"hello world!");
	return(0);
}

把上述代码保存为 main.m,而后执行:

objcc -o main main.m

当前目录下就会生成一个名为 main 的可执行文件。

须要说明的是,这个可执行文件只能在 Debian 下运行,若是想在 Debian 下编译出能在 OSX 下运行的可执行文件,还须要一些额外的交叉编译参数,这里就不详述了。

相关文章
相关标签/搜索