文档章节

Linux下配置object-c开发环境

ChenQi
 ChenQi
发布于 2014/07/28 16:08
字数 292
阅读 278
收藏 0

开发环境实际上就是“编译器+库+头文件+辅助开发工具”。

在linux上,首先分别安装object-c相关的编译器,库,辅助开发工具和头文件。

(类别:包名)

编译器:gobjc,gobjc++

库:gnustep

辅助开发工具:gnustep-make

头文件:gnustep-devel

(以上包名是ubuntu上的,其他linux发行版本的名字可能不会完全一样,但关键词肯定是相同的,比如gobjc,gnustep等)




代码示例:

Fraction.h

#import <Foundation/NSObject.h>

@interface Fraction: NSObject {
    int numerator;
    int denominator;
}

-(void) print;
-(void) setNumerator: (int) d;
-(void) setDenominator: (int) d;
-(int) numerator;
-(int) denominator;
@end


Fraction.m

#import "Fraction.h"
#import <stdio.h>

@implementation Fraction
-(void) print {
    printf("%i/%i", numerator, denominator);
}

-(void) setNumerator: (int) n {
    numerator = n;
}

-(void) setDenominator: (int) d {
    denominator = d;
}

-(int) denominator {
    return denominator;
}

-(int) numerator {
    return numerator;
}

@end

main.m

#import <stdio.h>
#import "Fraction.h"

int main(int argc, const char *argv[]) {
    Fraction *frac = [[Fraction alloc] init];

    [frac setNumerator: 1];
    [frac setDenominator: 3];

    printf("The fraction is: ");
    [frac print];
    printf("\n");

    [frac release];

    return 0;
}

Makefile示例:

Fraction:
    gcc Fraction.m main.m `gnustep-config --objc-flags` -lgnustep-base `gnustep-config --objc-libs` -Wl,--no-as-needed -o Fraction

运行结果:

chenqi@pek-qchen1-d1:~/projects/OBJ-C [1] $ ./Fraction
The fraction is: 1/3
chenqi@pek-qchen1-d1:~/projects/OBJ-C [1] $



© 著作权归作者所有

ChenQi
粉丝 61
博文 191
码字总数 111579
作品 0
丰台
高级程序员
私信 提问
arm-linux gdb调试工具的安装

开发环境:AT91SAM9X25开发板:安装linux2.6.39; pc的虚拟机:Linux version 2.6.18-194.el5 (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) ,arm-linux-gcc的版本为version 4.4.3 一、......

钟一鸣
2014/09/30
2.6K
0
linux C/C++开发环境搭建指南

Eclipse IDE for C/C++ developers 就是安装了CDT的Eclipse IDE了。 一、安装基本开发环境 本人想学习一下Linux下的C,C++程序开发,这几天一直在研究Linux下的C语言编译环境的建立,因为新...

突然帅了
2013/11/20
21.5K
0
linux系统下集成开发工具选择

在Windows下开发软件有众多工具可以选择,并且都非常好用。学用的工具有VB,VC,VF,C#,DELPHI,POWERBUILDER,JBUILDER,ECLIPS等,可是在linux下找一个比较好的集成开发环境是比较困难的,我说的困...

sinpo
2012/02/29
346
0
如何在Windows上编译Objective-C

Objective-C现在几乎已经变成了苹果的专利了,可以直接在苹果的Xcode上编译Objective-C程序,但是在Windows平台下的编译工具就寥寥无几了,本身这种语言用的人就不是很多。今天在网上突然看到...

xiahuawuyu
2012/07/21
1K
5
ubuntu下c/c++开发环境配置

ubuntu下的c/c++环境搭建是比较简单,因为有apt和新立得的帮助. 1. 首先是配置gcc,在ubuntu安装完成已经有gcc了(gcc是由GNU之父Stallman所开发的linux下的编译器,全称为GNU Compiler Collec...

acmfly
2012/03/31
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

rime设置为默认简体

转载 https://github.com/ModerRAS/ModerRAS.github.io/blob/master/_posts/2018-11-07-rime%E8%AE%BE%E7%BD%AE%E4%B8%BA%E9%BB%98%E8%AE%A4%E7%AE%80%E4%BD%93.md 写在开始 我的Arch Linux上......

zhenruyan
今天
5
0
简述TCP的流量控制与拥塞控制

1. TCP流量控制 流量控制就是让发送方的发送速率不要太快,要让接收方来的及接收。 原理是通过确认报文中窗口字段来控制发送方的发送速率,发送方的发送窗口大小不能超过接收方给出窗口大小。...

鏡花水月
今天
10
0
OSChina 周日乱弹 —— 别问,问就是没空

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @tom_tdhzz :#今日歌曲推荐# 分享容祖儿/彭羚的单曲《心淡》: 《心淡》- 容祖儿/彭羚 手机党少年们想听歌,请使劲儿戳(这里) @wqp0010 :周...

小小编辑
今天
1K
11
golang微服务框架go-micro 入门笔记2.1 micro工具之micro api

micro api micro 功能非常强大,本文将详细阐述micro api 命令行的功能 重要的事情说3次 本文全部代码https://idea.techidea8.com/open/idea.shtml?id=6 本文全部代码https://idea.techidea8....

非正式解决方案
今天
5
0
Spring Context 你真的懂了吗

今天介绍一下大家常见的一个单词 context 应该怎么去理解,正确的理解它有助于我们学习 spring 以及计算机系统中的其他知识。 1. context 是什么 我们经常在编程中见到 context 这个单词,当...

Java知其所以然
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部