zoukankan      html  css  js  c++  java
  • GNUstep搭建Object-C开发环境-debian, ubuntu

    想学IPhone,Mac开发,但是在公司不方便把MBP带来,就在debian中是用GNUstep配置环境进行开发。把搭建的过程写下来,做一个备份。
    准备环境

    1. 一台PC,虚拟机中安装debian,或者直接安装debian
    2. 安装GNUstep开发包 apt-get install gnustep-devel

    配置环境

    1. 修改$HOME/.bashrc,添加export GNUSTEP_MAKEFILES=/usr/share/GNUsetp/Makefiles/ (安装位置的makefiles)
    2. 然后重启终端,或者直接使用source $HOME/.bashrc重新载入配置
    3. 配置自己的VIM,VIM默认不支持OBJC的语法,无法高亮显示。下载插件解决此问题。Cocoa[http://www.vim.org/scripts/script.php?script_id=2674],下载解压到$HOME/.vim目录下

    开始开发程序(hello world)

    1. 新建GNUmakefile并添加如下内容

    include $(GNUSTEP_MAKEFILES)/common.make
    APP_NAME = HelloWorld
    HelloWorld_HEADERS =
    HelloWorld_OBJC_FILES = main.m
    HelloWorld_RESOURCE_FILES =
    include $(GNUSTEP_MAKEFILES)/application.make
    

    2. 新建main.m,即为objc代码文件,编写如下代码。

    #include
    @interface Say: NSObject
    {
    }
    -(void) sayHello;
    -(void) sayHelloTo: (NSString *) name;
    @end
    @implementation Say -(void) sayHello { NSLog(@"Hello World"); }
    -(void) sayHelloTo: (NSString *) name { NSLog(@"Hello World, %@", name); } @end
    int main(int argc, char *argv[]) { NSAutoreleasePool *pool; Say *person = [[Say alloc] init]; [person sayHello]; [person sayHelloTo: @"xiangshouding"]; [person release]; [pool release]; return 0; }

    3. 保存后进行make, 编译完了后,我们看看目录结构

    .
    ├── GNUmakefile
    ├── HelloWorld.app
    │   ├── HelloWorld
    │   ├── Resources
    │   │   ├── HelloWorld.desktop
    │   │   └── Info-gnustep.plist
    │   └── stamp.make
    ├── main.m
    └── obj
        └── HelloWorld.obj
            ├── main.m.d
            └── main.m.o
    4 directories, 8 files

    4. 执行使用: openapp ./HelloWorld.app
    5. 可以看到执行结果

    2011-12-08 20:01:43.203 HelloWorld[9903] Hello World
    2011-12-08 20:01:43.205 HelloWorld[9903] Hello World, xiangshouding
    

    参考文献

    http://www.nongnu.org/gstutorial/zh_TW/index.html 基础教程,可以学到很多东西。不过只限于基础语言学习
    http://www.otierney.net/objective-c.html.zh-tw.big5 如果有C基础,这个文档能够把你带入Object c的世界里

    最后,来一张VIM高亮的图, 效果很赞。(自己点击查看吧)

    http://files.blogcn.com/wp03/M00/03/9A/wKgKCk7lr1IAAAAAAAD2OVOIk7c330.jpg

    原文地址
  • 相关阅读:
    【智能家居篇】wifi网络接入原理(上)——扫描Scanning
    ExtJS学习-----------Ext.Array,ExtJS对javascript中的Array的扩展
    android之JSON 进行网络数据交换
    ios应用接入微信开放平台
    android 视频文件不能进行幻灯片的播放
    打一辈子的工才是最大的风险
    《梦断代码》摘录及感悟
    android怎样查看当前project哪些profile是打开的
    Cocos2d-x 游戏存档
    CBitmap,HBitmap,Bitmap区别及联系
  • 原文地址:https://www.cnblogs.com/helmsyy/p/3348171.html
Copyright © 2011-2022 走看看