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

linux下编译objectc

    博客分类:
  • ios
gcc 
阅读更多
编译静态库给ios使用 http://www.tuicool.com/articles/UZr6z2


1. $ yum -y install gcc-objc
2. 从http://wwwmain.gnustep.org下载GNUstep Startup和GNUstep Base,并从源码进行安装。
3.. $ export PATH=$PATH:/usr/GNUstep/System/Tools
4. $ echo "/usr/GNUstep/Local/Library/Libraries/" >> /etc/ld.so.conf
$ ldconfig
5.$ gcc `gnustep-config --objc-flags` -L/usr/GNUstep/Local/Library/Libraries -lgnustep-base hello.m -o hello
6. run program

prepare:
#yum install gcc-objc
#yum install libpng libpng-devel libtiff libtiff-devel libobjc libxml2 libxml2-devel     libX11-devel libXt-devel libjpeg libjpeg-devel
#wget ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-startup-0.25.0.tar.gz
#tar zxvf gnustep-startup-0.25.0.tar.gz
#cd gnustep-startup-0.25.0
#./configure
#make
#vi ~/.bashrc加入一行:
/usr/GNUstep/System/Library/Makefiles/GNUstep.sh

把/usr/GNUstep/Local/Library/Libraries/加到系统的lib路径里面
#vi /etc/ld.so.conf 加入下面一行:
/usr/GNUstep/Local/Library/Libraries/

编译环境配置好,写一个test.m并用下面的命令编译:
#gcc `gnustep-config --objc-flags` -L/usr/GNUstep/Local/Library/Libraries -lgnustep-base test.m -o  test

#./test
正常的话会正确执行,如果有报“Unknown time zone name `CST'.”,请修改/etc/localtime 设置正确的系统时区
#vi /etc/localtime 清空之前的内容,加入下面的:
TZif2
UTC-8

http://blog.sina.com.cn/s/blog_5326096f0101c3m8.html
分享到:
评论

相关推荐

    LINUX下简单的编译和使用动态链接库

    LINUX 下简单的编译和使用动态链接库 在 LINUX 下,编译和使用动态链接库是一项非常重要的技术。动态链接库,即 Shared Object(.so 文件),是将一些常用的代码,例如函数、类等,编译成一个独立的文件,供其他...

    Linux将多个C源文件编译进一个KO模块驱动示例

    在Linux系统中,开发内核模块(Kernel Object,简称KO)是扩展操作系统功能的重要手段。当我们需要编写一个复杂的驱动程序,可能需要多个C源文件来实现不同的功能模块。本示例将详细介绍如何将多个C源文件编译整合到...

    WINDOWS编译object c 的工具库(二)

    在Windows平台上进行Objective-C编程可能比在传统的macOS或Linux环境中更为复杂,因为Objective-C主要与Apple的开发环境Xcode紧密关联。然而,通过使用特定的工具库和编译环境,开发者可以在Windows上构建和运行...

    linux下onvif协议gsoap实现的源码(测试编译成功版)

    这个压缩包"linux下onvif协议gsoap实现的源码(测试编译成功版)"提供了一个在Linux下可以成功编译和运行的gSOAP ONVIF实现,这对于开发者调试自己的代码或理解ONVIF工作原理非常有帮助。 1. **gSOAP库介绍** - ...

    linux环境中c++调用lua动态链接库以及编译方法

    在Linux系统中,动态链接库通常以`.so`为后缀,代表"shared object"。`liblua.so`包含了Lua的运行时环境和核心API,供C++代码使用。 **编译Lua动态链接库:** 1. 下载Lua源码包,如`lua-5.x.x.tar.gz`。 2. 解压并...

    cJSON 可以直接在linux,或 windows C/C++编译器下直接编译使用

    cJSON库可以在Linux和Windows系统上使用C或C++编译器编译。在Linux上,通常使用`gcc`或`g++`,在Windows上可以使用Visual Studio或其他IDE。编译步骤包括: 1. 解压`cJSON.c`和`cJSON.h`到项目目录。 2. 将`cJSON.c...

    oss_sdk已交叉编译arm-linux平台

    这些组件的交叉编译版本意味着它们都被调整为在ARM Linux环境下运行,能够与OSS服务进行有效通信,实现上传、下载、列举、管理对象等功能。开发者可以利用这个SDK在他们的嵌入式系统上编写应用程序,无缝地集成阿里...

    libjingle在windows和ubuntu-linux上编译方法

    #### Ubuntu Linux平台下的编译步骤 1. **环境准备**: - 安装必要的开发库: - `sudo apt-get install libgtk2.0-dev` - `sudo apt-get install libssl-dev` 2. **配置环境变量**: - 设置`PYTHON`变量指向...

    Linux静态库编译

    本教程将详细讲解Linux下静态库的编译过程,并提供两个实例来帮助理解。 ### 静态库的基本概念 1. **对象文件(Object File)**: 当我们编写源代码并用编译器(如GCC)编译时,生成的是中间的二进制文件,即对象...

    LINUX编译及模块加载

    【Linux编译及模块加载】是指在Linux操作系统中,如何从源代码编译内核以及如何将编写的模块加载到内核的过程。这个过程对于开发者来说至关重要,因为能够定制内核以满足特定需求,或者为系统添加新的硬件支持。 ...

    Linux下C++使用json库解析库源码以及相关编译

    在Linux环境下,C++开发中经常需要处理JSON(JavaScript Object Notation)格式的数据,这是因为JSON是一种轻量级的数据交换格式,被广泛应用于网络服务接口和数据存储。本篇将详细介绍如何在Linux系统下使用C++配合...

    嵌入式linux上的dm9000网卡驱动源代码和Makefile编译驱动文件源代码

    嵌入式Linux上的DM9000驱动开发涉及到了内核编程、设备驱动模型、网络协议栈以及跨平台编译等多个方面。理解和调试这类驱动有助于提升对Linux系统底层工作原理的理解,对于从事嵌入式系统开发的工程师来说,是一项...

    linux版jison-c-0.9.tar.zip

    这个压缩包“linux版jison-c-0.9.tar.zip”包含了Jison-C的源代码及其在Linux环境下的编译和运行所需文件。 Jison-C是一个强大的工具,它允许开发者通过定义语法规则创建自定义的解析器。它的主要功能包括: 1. **...

    mac下编译jsoncpp - 小码农的csdn博客 - 博客频道 - CSDN.NET1

    这表明即使是在Mac环境下,编译时可能是使用了类似GCC的交叉编译器来生成适用于Linux环境的库文件。 5. 编译完成后,SCons会生成静态库(.a)和动态库(.dylib)文件,这些库文件可以被其他C++或C#项目使用,尽管C#...

    ubuntu交叉编译mysql的C语言程序到ARM开发板

    在 Ubuntu 系统下,需要设置 arm-linux 交叉编译工具链,以便能够将 C 语言程序编译到 ARM 开发板上。首先,需要解压 mysql-connector-c-6.0.2.tar.gz 文件: ``` #tar zxvf mysql-connector-c-6.0.2.tar.gz ``` ...

    Linux下如何用GCC编译动态库.docx

    本文档详细介绍了如何使用GCC在Linux环境下编译动态库,以及库在软件开发中的重要性和分类。 1. 为什么使用库? 库是代码复用的核心工具,避免了重复编写已有的功能,提高了开发效率。库分为源代码库和编译后的目标...

    linux中把.c的文件编译成.so文件

    本文将详细介绍如何在Linux环境下将一个简单的`.c`文件编译成`.so`文件。 #### 二、编译流程详解 ##### 2.1 准备源代码文件 假设我们有一个名为`mylib.c`的源代码文件,该文件包含了我们想要编译成动态链接库的函数...

    delphi编写so库,及调用实例,linux下运行,Deepin系统

    在Unix-like系统(包括Linux)中,`.so`文件是Shared Object Library的缩写,相当于Windows系统中的动态链接库(.dll)。这些库可以在多个进程之间共享,从而节省内存并简化程序的更新。 要使用Delphi创建.so库,...

    mac os x将C文件编译成.so库

    本篇文章将详细讲解如何在Mac环境下,利用GCC编译器将C文件转化为适用于Unix-like系统的共享对象库(.so库)。 首先,我们需要了解几个基本概念: 1. **C语言源文件**:以`.c`为扩展名的文件,包含了可读的C语言...

    json库linux c

    本项目提供的“json库linux c”就是这样一个库,允许在Linux环境下用C语言方便地解析和生成JSON数据。 标题“json库linux c”表明这是一个针对Linux平台的C语言JSON处理库,意味着它可以用于编写与JSON数据交互的C...

Global site tag (gtag.js) - Google Analytics