要我说,想要学习一门语言,搭建好相关的环境可以达到事半功倍的效果,那么今天我们就来聊一聊关于在windows系统上搭建Object-C语言编程环境的那些事。

文章目录

  • 一、基于CodeBlocks的Object-C编程环境搭建
    • 1.1 CodeBlocks?那个只会写C语言HelloWorld小白才用的软件?
    • 1.2 CodeBlocks能运行Object-C程序?
    • 1.3 CodeBlocks搭建ObjectC环境——一次搞笑的安装之旅
    • 1.4 CodeBlocks编程OC初尝试——这什么辣鸡???
  • 二、启用VMware虚拟机开发ObjectC
  • 三、xCode和CodeBlocks比对

一、基于CodeBlocks的Object-C编程环境搭建

1.1 CodeBlocks?那个只会写C语言HelloWorld小白才用的软件?

让我们先来看看这让人魂牵梦绕的CodeBlocks界面

在学习C语言时,CB、DV、VS三足鼎立,各家说各家的好。最初,我也是个CB玩家,别看VS具有把人养的双手残废的强大自动识别系统,CB便捷的装配和其轻量级的优点就足以使电脑小白一见钟情!但是学算法的时候,因为懒我最终还是选择了VS,CB在我的世界里已经沉寂了将近一年的时间
看我电脑桌面的顺序你们也晓得了CB是多么不经常被我用到……

1.2 CodeBlocks能运行Object-C程序?

了解到CodeBlocks能运行Object-C程序完全是一场意外,众所周知的Object-C是IOS开发语言,就苹果那臭屁的性格,当然是人家自己的机子,自己的环境,自己的软件彩星。于是最一开始,同学们都在打趣说:什么,要用OC做实验?学校怎么不人手发个苹果机!~~当然了,这是不可能的(没人疼没人爱,我是地里的小白菜)~~然后我就打算着手用虚拟机安装MaxOS的系统,然后在上面跑xCode运行OC程序,然后我就发现,苹果机的景象插件包各个都是GB结尾的,哎呦我这个难过呀,校园网好贵,我好伤心,于是我拖延了很久多没安装。
也就是那样的一个午后,阳光正好,教室内空调也很足,我吃着刚去学校小超市顺来的西瓜快乐的一边和同学闲聊,一边打开电脑准备写点作业。然后话题就跑到了OC上:“你知道吗,CB也可以跑Object-C”。

当时的我就是这个表情,我还真就想也没想打开电脑就开始配环境!

1.3 CodeBlocks搭建ObjectC环境——一次搞笑的安装之旅

因为我搭环境贼菜,和那些大佬比起来我简直像是缺颗脑子一样,但是我这次真的是菜到家了,来搞笑一下hiahiahia!

实验环境说明

win10系统
CodeBlocks16.01
Object-C

实验参考

写在前面的话:
我是codeblocks打c程序的玩家,所以不需要安装codeblocks,只是装配GNUstep就可以了(广大cb爱好者都看过来!)。我的装配用时大概是二十分钟,中间出了正常人都不会出的bug耽误了一会,所以整个装配流程还是很快的。

先是按照 Bonker大佬的帖子 安装,然后出了error: stray ‘@’ in program的报错:

我当时就想了,嗯?难道是我路径搭错了?怎么这样子了!上网翻了一下错误,发现并没有相关博客,唔,那一定是我搭建环境的时候脑残少些东西了,于是我又翻到 另一位大佬 的博客,对自己的安装进行了补充,具体的就是:
(1) 又检查了一遍自己的Search directories/Toolchain里的路径(这里我还是按照Bonker的方法安装的,第一次好像没配上)
(2) 补充添加Objective-C文件类型支持
进入 Settings->Editor…,选择 Syntax highlighting,点击“Filemasks…”按钮,在弹出框尾部添加*.m 到文件类型。
点击“Keywords…”按钮 (紧靠Filemasks…按钮) 添加下面Object-C的关键字到Edit Keywords列表中。
@interface @implementation @end @class @selector @protocol @public
@protected @private id BOOL YES NO SEL nil NULL self @protocol

当然了,这些补充都不是重点,因为就在这一点一点改环境的过程中,我渐渐发现他们一直在装配.m文件,.m…… .m……于是,我顿悟!!!我用来测试的文件的文件名写!错!了!
应该测试的是.m文件,我测试用的是.cpp文件,dbq,我就是个弟弟,我还觉得人家教程有问题我是真的弟弟了,这里向大佬说声dbq,然后我就安装完成了……

从我这个报错也能清晰地看出我是真的一丢丢都不会OC这个语言。

1.4 CodeBlocks编程OC初尝试——这什么辣鸡???

来讲讲我遇到的难题

首先,我遇到了这个问题,上网一查,原来是没写main函数没有程序入口。

然后就是这个问题,我的.h文件main函数找不到,好气噢关键是我现在都不知道咋肥四

好吧,布星我就写一起呗,不开.h文件了,直接写一个.m里,写完是能跑了,我就犯嘀咕了,这,这玩意也没一点面向对象的想法吧,class都没法好好开了。

然后我就发现了一个让我彻底弃坑的问题:
这玩意版本也太落后了,怎么就这么点关键字,上网一查才知道,它连2.0版本都不支持,怎么形容一下,就像你做饭没煤气灶,说是不支持那么高级的东西,想煮饭?自己烧柴火去,这哪能忍,我当即就转战了,下我的虚拟机去!


给大家展示一下,这小打小闹的东西都能写什么:


就是那个“Dog.h”找不见

就这个基本关键字,版本过低不支持报错

当前时间上午十点,我从早上五点四十起床收拾收拾开始配环境,中间还上了一节英语课到现在转战还不算太晚ww。

二、启用VMware虚拟机开发ObjectC

实验参考

实验环境

VMWare15
maxOS13
xCode9

首先,我按照 VMware虚拟机 安装 macOS High Sierra 10.13 安装了MaxOS系统

用MaxOS系统的各位晓得,现在苹果机出了maxOS14也就是黑苹果,然而我试了好几次也不能更新,就只能停留在10.13.6好像是这个,苹果它亲口告诉我我这个是最新版本

关键是xCode10是不能安装在MaxOS13上的,版本不匹配!!!
我只好去苹果官网下载了个老版本的xCode 4.9.1

这样子,我终于可以开始写作业啦


三、xCode和CodeBlocks比对

要么说呢,用了苹果你就别想碰别的了,这不是好用了一星半点好吗

垄断性产业就是不一样,我只能高呼真香了,就用windows系统进行ObjectC编程开发这件事来说,虽然安装maxOS虚拟机会需要一段时间,但是我认为这还是最优选择,不管是maxOS系统良好的界面操作,xCode便捷的编译和完美的语法高亮,其适配程度都让其他玩家没话说,至少后来其他同学向我展示也有能编写运行xCode的wab端程序我也一点都没有动摇。虽然说还是没有买个苹果电脑的念头,但是不得不说,这个虚拟机我一定会经常光顾~
当然我也知道现在Object-C是个边缘语言,但是对于新手来说,其简单的语法,对C语言的兼容性都使其成为了IOS开发很好的入门语言,至少我一天就学会了嘻嘻嘻~
不多说了,希望能对在坐的各位有所帮助!

Object-C一日速成——环境搭建的更多相关文章

  1. Tensorflow object detection API(1)---环境搭建与测试

    参考: https://blog.csdn.net/dy_guox/article/details/79081499 https://blog.csdn.net/u010103202/article/ ...

  2. ubuntu Tensorflow object detection API 开发环境搭建

    https://blog.csdn.net/dy_guox/article/details/79111949 luo@luo-All-Series:~$ luo@luo-All-Series:~$ s ...

  3. Tensorflow object detection API ——环境搭建与测试

    1.开发环境搭建 ①.安装Anaconda 建议选择 Anaconda3-5.0.1 版本,已经集成大多数库,并将其作为默认python版本(3.6.3),配置好环境变量(Anaconda安装则已经配 ...

  4. PyCharm+selenium环境搭建报错:Traceback (most recent call last): TypeError: 'module' object is not callable

    环境搭建好后,代码如下: from selenium import webdriverdriver = webdriver.chrome()driver.get("http://www.ba ...

  5. 使用Tensorflow object detection API——环境搭建与测试

    [软件环境搭建] 操作系统:windows 10 64位 内存:8G CPU:I7-6700 Tensorflow: 1.4 Python:3.5 Anaconda3 (64-bit) 以上环境搭建请 ...

  6. 【Spark机器学习速成宝典】基础篇01Windows下spark开发环境搭建+sbt+idea(Scala版)

    注意: spark用2.1.1 scala用2.11.11 材料准备 spark安装包 JDK 8 IDEA开发工具 scala 2.11.8 (注:spark2.1.0环境于scala2.11环境开 ...

  7. PyQT5速成教程-1 简介与环境搭建

    本文由 沈庆阳 所有,转载请与作者取得联系! PyQt简介 一个良好的界面是人机交互中十分重要的一环. Python作为脚本语言,起初并未拥有GUI开发的部分.但随着其开放的扩展性,使得Python不 ...

  8. Hibernate 系列 02 - Hibernate介绍及其环境搭建

    引导目录: Hibernate 系列教程 目录 昨晚喝多了,下午刚清醒,继续搞Hibernate.走起. 觉得还行的话,记得点赞哈,给我这个渣渣点学习的动力.有错误的话也请指出,省的我在错误上走了不归 ...

  9. ubantu16.04+mxnet +opencv+cuda8.0 环境搭建

    ubantu16.04+mxnet +opencv+cuda8.0 环境搭建 建议:环境搭建完成之后,不要更新系统(内核) 转载请注明出处: 微微苏荷 一 我的安装环境 系统:ubuntu16.04 ...

随机推荐

  1. [browser window窗口大小 算是screen补充吧]主要因为移动IE游览器 写了个兼容

    先上图吧 来上代码 console.log(window.outerWidth + '--' + window.outerHeight);//只读的整数,声明了整个窗口的XY //IE 不支持此属性, ...

  2. Easy User Manager System writeup

    0x01 解题 思路 一个进程用自己的ip去申请拿到code然后进入verify页面,另外一个进程去申请8.8.8.8 步骤 1. 首先注册一个账号 然后用两个不同的浏览器进入Change页面.这里我 ...

  3. skip-broken to work around the problem rpm -Va --nofiles --nodigest

    清除yum缓存 yum clean all 重新安装,见结尾[root@localhost ~]# yum install libstdc++.so.6Loaded plugins: fastestm ...

  4. python3.7安装, 解决pip is configured with locations that require TLS/SSL问题

    python3.7安装, 解决pip is configured with locations that require TLS/SSL问题1.安装相关依赖 yum install gcc libff ...

  5. RMAN 'Duplicate From Active Database' Feature in Oracle11g (Doc ID 452868.1)

    RMAN 'Duplicate From Active Database' Feature in Oracle11g (Doc ID 452868.1) APPLIES TO: Oracle Data ...

  6. Linux-3.14.12内存管理笔记【构建内存管理框架(1)】

    传统的计算机结构中,整个物理内存都是一条线上的,CPU访问整个内存空间所需要的时间都是相同的.这种内存结构被称之为UMA(Uniform Memory Architecture,一致存储结构).但是随 ...

  7. hidraw设备简要分析

    关键词:hid.hidraw.usbhid.hidp等等. 下面首先介绍hidraw设备主要用途,然后简要分析hidraw设备驱动(但是不涉及到相关USB/Bluwtooth驱动),最后分析用户空间接 ...

  8. python包matplotlib绘制图像

    使用matplotlib绘制图像 import matplotlib.pyplot as plt from matplotlib.pyplot import MultipleLocator impor ...

  9. python做中学(二)bool()函数的用法

    定义: bool() 函数用于将给定参数转换为布尔类型,如果没有参数,返回 False. bool 是 int 的子类. 语法: 以下是 bool() 方法的语法: class bool([x] 参数 ...

  10. Protractor-引入Cucumber

    上一篇博文中我们已经在package.json中写入了cucumber依赖库,在执行 npm install 之后,cucumber就已经下载好了.接下来要做的是修改conf.js,请参考下图: 去年 ...