`
jacklan
  • 浏览: 134125 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

在Windows 下编译Objective-C 注意事项(转贴)

阅读更多

原帖地址:
http://www.cclo.idv.tw/~cclo/blog/archives/2004/12/gnustep_env.html
有部分修改调整

这篇文章将会介绍如何在MS-Windows 系统中利用GNUstep 编译Objective-C 的程式。

非技术人员,或是对Objective-C 没有兴趣的人可以跳过。 ^^;

使用msys 编译的方法: 
首先至GNUstep 的网站下载最新的installer。 (下载版号最新的执行档就可以了)
(到达 http://www.gnustep.org/experience/Windows.html ,下载GNUstep System和GNUstep Core这两个Required包)
安装installer。 (以下说明假设GNUstep 是装在C:\GNUstep 这个目录下)
开启msys。 
在home directory 下开一个叫做.profile 的档案,里面放这两行设定:

export OBJC_INCLUDE_PATH=/c/GNUstep/GNUstep/System/Library/Headers/
export LIBRARY_PATH=/c/GNUstep/GNUstep/System/Library/Libraries/

说明:这两行是在设定环境变数,分别是设定Objcective-C 的header files 的位置,以及library 的位置。 GCC 会根据这两个路径去搜寻header files & libraries。
重新开启msys,或是在命令列执行下面的命令: 

source ~/.profile

现在你可以编译了。 记得在link 的时候必须指定要link objc 和gnustep-base 等两个libraries:

gcc -o test.exe test.m -lobjc -lgnustep-base

使用cmd.exe(命令提示字元)编译及执行编译结果: 
依据前面的步骤1. 2. 安装GNUstep 套件。
「开始→控制台→系统→进阶→环境变数」(以Windows XP 为例) 
在Path 环境变数中,增加以下两个目录: 

C:\GNUstep\mingw\bin
C:\GNUstep\GNUstep\System\Tools

前者是为了能执行gcc,后者是为了gnustep-base.dll。 (当然,把gnustep-base.dll 放到\Windows\System\ 下面也可以)
增加一个环境变数OBJC_INCLUDE_PATH,其值为C:\GNUstep\GNUstep\System\Library\Headers。 
增加一个环境变数LIBRARY_PATH,其值为C:\GNUstep\GNUstep\System\Library\Libraries。

增加上述这两项的理由和前面msys 的4. 相同。 
现在你也可以在cmd 下编译了,语法和msys 下相同。 

参考文件: 
comp.lang.objective-C FAQ -- David Stes
GCC Online Manual -- Free Software Foundation

分享到:
评论

相关推荐

    Windows7下编译运行Objective-C

    在这个场景下,我们关注的是如何在Windows 7环境下编译和运行Objective-C代码。 GNUstep是一个开源项目,它的目标是实现一个与Apple的Cocoa框架兼容的环境。Cocoa是macOS上的主要开发框架,而GNUstep则提供了在其他...

    Windows下配置Objective-C编译运行环境

    在Windows系统上配置Objective-C的编译运行环境可能比在Mac上更为复杂,因为Objective-C主要是为Apple的iOS和macOS平台设计的。不过,通过一些工具和步骤,你可以在Windows上搭建一个基本的环境来学习和实验...

    Objective-C Runtime测试代码

    Objective-C语言的许多决策可以在编译和运行时执行。只要有可能,它是动态的。这意味着Objective-C语言不仅需要一个编译器,还需要一个运行时系统来执行编译的代码。Runtime系统是一种用于Objective-C语言的操作系统...

    Objective-C基础教程(入门教程).pdf

    24. Windows平台支持:Objective-C虽然是为Mac OS X平台设计的,但也可以在Windows平台通过Cygwin或MinGW工具链进行编译和运行。 25. GCC编译器:GCC是Objective-C的官方编译器,它支持Objective-C以及C/C++的编译...

    Objective-C 2.0 运行时系统编程指南

    运行时系统在Objective-C中扮演着类似操作系统的角色,为Objective-C应用程序提供了基础支撑。 #### 文档结构与目的 本文档主要分为以下几个部分: 1. **运行时系统的版本和平台**:介绍了Objective-C运行时系统...

    scons 在windwos 下编译objective-c 脚本

    scons 在windwos下编译objective-c 的脚本,在windwos环境下写测试用例使用。前提是机器上已安装了gnustep工具,四个常用的工具,http://blog.csdn.net/tomatofly/article/details/6034116 作参考。

    Objective-C与Objective-C++的混用代码示例

    Objective-C是基于C语言的,主要用于构建iOS和macOS应用程序,而Objective-C++则是Objective-C的一个扩展,它引入了C++的特性,使得开发者可以同时利用Objective-C的动态特性和C++的面向对象编程能力。 ### ...

    redis++使用说明,windows下编译redis-plus-plus

    "Redis++使用说明,windows下编译Redis-Plus-Plus" 在这篇文章中,我们将详细介绍如何在Windows平台下编译Redis++,包括编译hiredis.lib和Win32_Interop.lib静态库文件的过程,然后安装Cmake并编译Redis++,最后...

    Windows下进行Objective-c开发.docx

    下面将详细介绍如何在Windows下设置Objective-C的开发环境,并编写并运行一个简单的“Hello, World!”程序。 首先,你需要下载和安装四个关键的GNUstep组件: 1. **GNUstep System**:这是基础环境,提供了系统所...

    windows下编译vlc-qt (最新)

    windows下编译vlc-qt (最新)。 包内容:vlc-3.0.0-win64.7z、vlc-qt-1.1.1.tar.gz、上述编译后的库(debug、release) 具体可查看 https://blog.csdn.net/automoblie0/article/details/104664327

    学习Objective-C--第一天.doc

    - 在 Windows 上也可以通过 CygWin 或 MinGW 等工具编译 Objective-C 代码,尽管这不是主要讨论的内容。 3. **代码编译与运行** - 编译是将高级语言转换为机器可执行的低级代码的过程。在 Mac 上,你可以使用终端...

    Windows下的Objective-C集成开发环境(IDE)的搭建 (一)

    请参考提供的文档《windows下使用gunstep,codeblocks搭建object-c可视化开发环境.docx》获取更详细的步骤和截图指南,以帮助你顺利完成搭建过程。记得在安装和配置过程中遇到问题时,可以查阅在线社区和官方文档获取...

    Effective Objective-C 2.0

    《Effective Objective-C 2.0》是一本由Matt Galloway所著的关于Objective-C编程语言的书籍,主要面向开发iOS和OS X应用程序的开发者。这本书详细阐述了如何利用Objective-C 2.0的新特性和最佳实践来提高程序的效率...

    windows 配置objective-c 开发环境 详细教程

    2. **MSYS**: 为Windows提供了一个类Unix的环境,便于在Windows下编译和运行GNU工具。 3. **GNUmake**: 用于自动化编译过程的一个工具,可以读取称为“Makefile”的文件,并根据这些文件中的指令来构建最终的程序。 ...

    Objective-C - Learning Objective-C 2.0 Second Edition

    C语言是Objective-C的基础,掌握C语言对于学习Objective-C至关重要。本书的第一章《C, the Foundation of Objective-C》从C语言的基本概念出发,介绍了变量、数据类型、运算符、表达式、控制结构等基础知识,为后续...

    Using-Swift-with-Cocoa-and-Objective-C(4.1)

    在Swift与Objective-C的世界里,混编技术使得开发者可以充分利用这两种语言的优点,为iOS和macOS应用程序开发带来更大的灵活性。"Using Swift with Cocoa and Objective-C(4.1)"是Apple官方发布的文档,旨在帮助...

    这是一个基于Objective-C语言的基础案例集。旨在用于给初学者快速了解Objective-C语言的语法。.zip

    Objective-C是一种强大的面向对象编程语言,它主要应用于Apple的Mac OS X和iOS操作系统。这个基础案例集是专为初学者设计的,目的是帮助他们迅速掌握Objective-C的基本语法和概念。以下是一些关于Objective-C的关键...

    objective-c语言教程

    - **使用super**:详细说明了super关键字的用途及注意事项。 - **重新定义self**:探讨了重新定义self关键字的影响及其应用场景。 #### 四、协议 - **声明接口供他人实现**:介绍了如何声明接口以供其他类或对象...

Global site tag (gtag.js) - Google Analytics