gnustep with clang to compile objc for windows

准备学习一下objc,为以后的不时之需做点小准备,但是又没有预览要买MAC,所以只能借助于GNUsetp了,但是GNUstup貌似好久没有跟新了,对objc 2.0不太支持,网上找到了使用GNUstep环境编译clang来支持objc 2.0,有具体的方法以及编译好的bin。

具体请移步这里:https://solarianprogrammer.com/2012/03/21/clang-objective-c-windows/

我是懒人,就用了github上的懒人包,但是编译不理想,有警告和错误。上图。

虽然稍加修改就可以达到编译成功,但是还是觉得不舒服,所以就自己下载了clang源码按照前面clang-objective-c-windows的方法编译了。最新的3.5在GNUstep上编译不成功,原因是GNUstep的gcc版本有点低,4.6.1,所以下载了clang 3.4.2,完成了clang的编译和安装。

但是用clang 3.4.2 编译我的objc的时候,又出现问题了。

clang.exe: error: unknown argument: ‘-fexec-charset=UTF-8‘

我在 GNUstep\System\Library\Makefiles\Additional\base.make:63 找到了如下内容:

  # For literal string handling, base requires the compiler to store the
  # string as UTF-8
  AUXILIARY_OBJCFLAGS += -fexec-charset=UTF-8

注释掉了

AUXILIARY_OBJCFLAGS += -fexec-charset=UTF-8

这句,如下

  # For literal string handling, base requires the compiler to store the
  # string as UTF-8
  # AUXILIARY_OBJCFLAGS += -fexec-charset=UTF-8

在编译就没有问题了。

运行结果如下:

我自己编译的包会打包上传CSDN的,上传完成后会追加网址的。

以上就是对自己搭建windows objective-c学习环境的一个总结,希望能帮助有需要的人。

如果想自己编译clang,具体的过程在本文开始给出的网址中就有,如果是拿来主义的,可以直接下载我上传的包解压到E:\根目录下使用。

时间: 2024-08-02 14:10:32

gnustep with clang to compile objc for windows的相关文章

Compile FreeCAD on Windows

Compile FreeCAD on Windows [email protected] 1.Introduction FreeCAD是一个参数化的三维造型软件,主要用于任意大小的实际模型的设计.参数化的建模方式可以通过修改相关参数从而方便地修改你的设计.FreeCAD是开源软件,并提供了便利地自定义方式 bbs.chinaacc.com/forum-2-3/topic-5591354.html bbs.chinaacc.com/forum-2-3/topic-5591353.html bbs.

compile FFMPEG under windows

这个文章应该算是最好的了.但是还有一些需要修正 win10 msys2 vs2015 ffmpeg3.2.2 编译 1) 把这个加到 ffmpeg.c 的最上面 #include <winsock2.h>

关于 Clang 在 CodeBlocks 下是如何编译成功 C++ 源码的

不论怎样, Clang 本不是给 Windows 用的, 但既然有预编译包提供下载, 就说明至少能用. 从 Clang 代码里得知, 其实开发人员很弱智, 难道就不能动态寻找 Include 路径吗? 想使用 Clang 编译 C++ 代码, 请随时备一份 MinGW, 保存到 C 盘, 目录名必须保持原来的样子, 即 C:\MinGW 费话一大堆, 其实只是这么做而已就可以, 声明: 这个办法也是受网友启发, 这个问题, 在最新版本的 Clang 3.6.0 中依然存在. 下面粘贴一下关键代码

使用code::blocks编译windows的dll链接库

因为机子上没有安装Visual Studio,所以找到了一种通过code::blocks编译dll的方式,踩到的坑是code::blocks默认的compiler是32位的,这样编译出的dll也是32位的,编译64位的需要借助MinGW-w64的toolchain. 为code::blocks配置外部MinGW-w64编译器可以参考Compile 64-bit under windows with MinGW-w64. 使用code::blocks创建一个dll的工程,如下图: go和next到

Windows API参考大全新编

书名:新编Windows API参考大全 作者:本书编写组 页数:981页 开数:16开 字数:2392千字 出版日期:2000年4月第二次印刷 出版社:电子工业出版社 书号:ISBN 7-5053-5777-8 定价:98.00元 内容简介 作为Microsoft 32位平台的应用程序编程接口,Win32 API是从事Windows应用程序开发所必备的.本书首先对Win32 API函数做完整的概述:然后收录五大类函数:窗口管理.图形设备接口.系统服务.国际特性以及网络服务:在附录部分,讲解如何

Qt5.7.0配置选项(configure非常详细的参数)

configure是一个命令行工具,用于配置Qt编译到指定平台.configure必须运行于Qt源码根目录.当运行configure时,编译源码使用的是所选工具链中的make工具. 一.源码目录.编译目录和安装目录 源码目录就是包含源码的目录.编译目录是包含Makefiles文件.object文件和其他中间文件的目录.安装目录是二进制文件和库文件安装的目录. 当编译目录和源码目录不一样时,称为影子编译(shadow build),比如说,Qt Creator默认是使用影子编译来编译工程的.这里也

2013年新年礼物---CrossFPC 终于出来了

2012年12月份,玛雅人的预言没有实现,一个内部进行了7年开发的CrossFPC 终于见光了. 网址:http://www.crossfpc.com/ Welcome to CrossFPC, a free toolkit to integrate the FreePascal compiler, targetting various OS and hardware platforms, as a cross-compiler into the Embarcadero® Delphi® IDE

C++ Primer Chapter 1

When I start reviewing, I thought Chapter is useless. Because the title is "Getting Start" . I thought that is useless. But I found something I miss before, so I review it and found I understand something that confused me. So every parts is usef

信息安全----openssl

compile openssl for windows http://www.blogcompiler.com/ 2Grab the desired OpenSSL source tarball. Use OpenSSL version 1.0.0 or newer; 3Put your tarball in a temporary directory, e.g. /tmp and unpack it: $ tar zxvf openssl-1.0.0e.tar.gz - See more at