在安卓手机上学习C语言 - 安卓手机C/C++编译环境的搭建 : 程序世界的创建



        在安卓手机上学习C语言

          安卓手机C/C++编译环境的搭建 : 程序世界的创建


  在电脑上运行的QQ,手机上的QQ都是程序, 这些通电就能用的神奇玩意, 如果我说它们都是程序员用一个一个英文字母,数字,奇奇怪怪的符号创造出来的,我想那些没有任何概念的朋友可能会感到惊讶.

  是的, 在没有揭开程序世界的神秘面纱之前, 一切都是那么神奇.

实际上, 程序确实是用一个一个英文字母(或者说拼音字母...)来写出来的, 就和写小说一样写出来的. 但是并不是写完之后把写出来的内容保存到一个文件,然后把文件名一改就能够当软件使用了. 程序员们写出来的程序并不是给人看的, 是给装在电脑上,手机上的一个叫做CPU的硬件看的. 简单来说, 程序员写的文字就是命令, 是发布给CPU的, 让CPU干什么, CPU就干什么,比如让CPU在屏幕就会显示什么一个图片,显示一个按钮之类的. 不过遗憾的是, CPU是一个电子产品, 并不能识别出英文字母,数字,和一些和鬼画符差不多的符号.

CPU只识别0和1 , 要给CPU发布命令就要用CPU能识别的语言 , 在CPU的语言中, 所有的文字只有两个 0 和 1 . 是不是很奇怪, 是不是想破脑袋都想不出来两个数字所组成的语言究竟是怎么做出一件件惊天动地的大事的.

保持你的探索欲, 你可以在这篇文章之外尽情的搜索补充这方面的知识.

现在你只需要知道, CPU使用的这门语言叫做机器语言, 是非常晦涩难懂的. 在很早很早以前,程序员的上仙们就是用这套晦涩难懂的咒语让CPU进行工作的.

在这种情况下, 需要先把发给CPU的命令用我们人类的语言写下来, 然后在一个一个翻译成CPU能识别的机器语言, 然后交给CPU去执行. 这样的工作是非常麻烦的. 后来程序员上仙们发明了一个法宝--翻译软件 , 这个法宝能够将程序员上仙们能看够看懂的但CPU看不懂的文字翻译成CPU看得懂的机器语言.

由于人类的语言太啰嗦,太复杂, 上仙们在制作翻译软件这个法宝的时候用的还是机器语言制作的, 而且这些上仙都是外国的上仙, 所以这种翻译软件只能翻译一些特定的英文字母,数字. 要是将其他文字,其他英文字母输入给这个翻译软件, 翻译软件就算被打死也翻译不了.于是程序员上仙们就把这个翻译软件能够翻译的文字叫做汇编语言.

在汇编语言面世之后的一段时间, 程序世界发生了翻天覆地的变化. 后来在美国出现了一些天资聪慧,法力高强的上仙, 他们在汇编语言的基础之上有创造出了一些更厉害的语言, 这些语言能够识别出更多的文字.

于是在编程世界中, 上仙们把机器语言和汇编语言划分到低级语言这一类, 后来出现的语言被划分到高级语言一类.

我们所要学的C语言就是高级语言中的一个.

C语言是一个出生在美国的上仙丹尼斯·里奇发明的, 这位上仙高强得令人发指, 他被称为C语言之父,UNIX之父. 当今的很多语言都受到他所发明的C语言的影响.

回归正题, 我们要写的程序, 就是用C语言来完成的.

我们以后写出的C语言程序会经过一些翻译软件来翻译成机器语言.( 它先被翻译成汇编语言, 然后再翻译成机器语言).

而在这里, 我们要做的就是把这些翻译软件安装好.

C语言的翻译软件叫做gcc. 这是一个集成了C翻译成汇编,汇编翻译成机器语言的神器.这种把C语言翻译成机器语言的神器叫做编译器.

在程序世界中, 有不少的门派, 微软(MicroSoft)公司是一个门派, Unix和Linux是一个门派.在不同的门派中使用的编译器是不相同的, 微软公司的编译器不能再Unix和Linux上使用, 就像你把电脑上一个可以运行起来的软件复制到安卓手机上运行不起来一样.

我们在这里使用的gcc 是Linux门派下的编译软件, 本来这种软件只能在Linux门派的系统(Linux系统)上才能够使用的, 在安卓上也是用不了的,而安卓上没有能够直接运行起来的编译器, 但有一些非常厉害的高手把Linux系统改造成可以在安卓上运行, 所以, 我们需要在安卓上运行Linux系统, 然后在Linux系统上运行编译器, 把我们写出来的程序交给编译器翻译.

下面正式进入主题:

第一步:

首先 , 你的手机需要获取root权限. 如果不知道如何获取, 可以到电脑上搜索一下安卓手机root教程. 不同品牌的手机root的方法不同. 也可以到机锋论坛上寻找root的具体方法.

第二步:

下载一个软件: Complete Linux

链接地址:

http://heanet.dl.sourceforge.net/project/linuxonandroid/App/Complete%20Linux%20Installer%20v2-8.apk

下载完成之后安装它.

安装完成,打开软件后会出现第一次启动 ,然后需要安装引导脚本和busybox的提示, 点OK继续

如果没有出现这样的提示, 那么证明这个软件没安装好, 可以在设置 – 应用程序 找到这个软件, 然后 清除数据, 之后重新打开这个软件应该就能够出现这个提示了, 如果还是不提示,可能是你手上的手机有点问题.

第三步:

这个软甲安装完之后, 还需要下载一个文件 , 这个文件就是Linux系统(Ubuntu发行版的Linux系统), 下面是链接:

http://jaist.dl.sourceforge.net/project/linuxonandroid/Ubuntu/14.04/Core/ubuntu-14.04.CORE.ext4.PREALPHAv1.zip

如果链接失效,请在http://linuxonandroid.org/downloads 寻找.

文件下载完之后, 由于是压缩包文件, 需要将这个压缩包解压.  在这里推荐一个安卓上的解压软件: Zarchiver , 可以把压缩包中的文件解压到任意目录, 但目录最后不要带有中文字符.

第四步:

解压完之后, 在下载一个软件 : 终端模拟器. 这个软件是用来进入Linux系统的.

链接:  http://pan.baidu.com/s/1kU7UCkf

下载完之后直接安装.

第五步:

安装完终端模拟器之后回到Complete Linux软件中.

点击软件得左上角 -> 点击启动系统 , 会出现下图所示的界面,

然后点击右上角的SETTING(设置的意思), 然后点击编辑.

然后手机会出现另外一个界面:

完成之后点保存更改.

然后点击启动Linux

一般情况下会出现要求获取Root权限的界面  , 如果没有,证明你的手机没有获取root权限, 那么你就要回到第一步获取root获取权限, 如果有, 就允许获取.

如果成功的话, 软件就会自动启动Linux系统.

系统初次启动时, 需要进行一些配置,

输入n后回车.

在输入密码时, 是不会有字符显示出来的, 所以不用紧张,你手机没有坏掉.密码输入完之后回车就可以了.

如果碰到Start VNC server? (y/n) 和 Start SSH server? (y/n) 时 , 可以输入n然后回车.

如果碰到Save settings as default (y/n) (You can always change it later in the app)时, 输入y,然后回车.

最后一步:

当最后有 [email protected]:~# 出现时, 就证明你成功了. 如果暂时不想使用Linux系统了, 你需要输入 exit 命令,然后回车. 要不然你下次可能进入不了Linux系统, 直到你重启之后才能进入.

初次启动Linux系统, 上面基本没有什么软件 ,我们要使用到的编译器也还没安装. 所以还需要安装编译器. 安装编译器可以通过命令来进行操作(因为这没有图形界面, 所以只能靠输入命令来进行操作了.)

首先, 需要更新系统,否则无法安装软件:

输入命令: sudo apt-get update

回车之后, 系统会自动下载一些文件, 可能需要比较长的时间. 在没有下载完的时候, 你是不可以再继续输入命令的.

当下载完成之后, 就可以下载安装gcc编译器了,

输入命令: sudo apt-get install g++

回车之后, 系统会自动下载g++编译器(就把他理解成gcc的升级版好了), 可能在下载的时候回停下来提示问你是否真的要下载 一般会提示 (y/n) ,输入y 然后回车就好了.

完成之后(当你能又能输入命令之后), 你需要输入 g++ 然后回车

如果显示的是 bash: g++: command not found

那么说明你没有安装成功 , 你需要重新执行命令: sudo apt-get update, 然后执行 sudo apt-get install g++

可能前面的两三次都会失败, 多试试几次就好了.

这一章就到这里了.

时间: 2024-10-10 13:29:30

在安卓手机上学习C语言 - 安卓手机C/C++编译环境的搭建 : 程序世界的创建的相关文章

在安卓手机上学习C语言 -- 前言

现在有很多学习C语言的系列教程, 不过这些教程都是在电脑上进行练习的, 这系列文章是给那些手上还没有电脑, 但对于编程有很大的兴趣的朋友看的. 这一系列的文章是写给没有编程基础的朋友的, 在这系列文章的前期, 可能会有一些类似于童话的谎言, 因为没有基础的朋友对于一些非常专业的术语可能会非常迷茫,而想要解释清楚这些术语需要非常多的陌生的概念.而这些概念可能比一个术语更加复杂, 所以在前期, 我会对一些非必要的术语进行片面的阐述. 这系列的文章我也是一时想起, 并没有建立好完善的体系 , 不过我会

002 - 在安卓手机上学习C语言-Linux入门 通往程序世界之门-操作系统

Linux入门  通往程序世界之门--操作系统 在上一章中 , 我们讨论了为何要搭建编译环境, 那么多的上仙出场, 我相信大家还能记住的搭建编译环境的原因的. 在讨论的时候, 不知不觉地把Linux操作系统给提出来了, 其实, 使用Windows去教学可能会更方便一点. 毕竟大家都用熟了嘛 , 不过我们是在手机上编程, 手机上使用不了Windows上的工具, 所以Windows暂时是用不上了, 只好转入Linux系统的怀抱了. 在这一章中, 我会简单地介绍一下在Linux的下使用到的命令. 最后

R语言初级教程(01): R编程环境的搭建

R是目前最流行的高级编程语言之一,被广泛用于统计分析和数据可视化.R是开源的,有非常活跃的社区来支撑. 想要了解更多有关R信息,可访问R的主页:https://www.r-project.org/. RStudio是R的一个集成开发环境(IDE).使用它的话,R编程的学习和实践会更加轻松和方便. 下面就教大家如何下载并安装R和RStudio,比较简单,这里以Windows系统的安装为例,其它系统类似. 1. 下载R安装包 步骤1:打开R安装包的镜像链接https://cran.r-project

swift语言实战晋级-1 Swift开发环境的搭建

想要进行Swift的学习,必须要有个开发环境.简单的说就是装好了Xcode的Mac系统.那么接下来我们就简单了解一下这方面的内容. 1.1 下载Xcode Xcode是苹果公司出的编程工具,类似于微软出品的visual studio,编写Java的eclipse,开发Flash的Flash IDE.所谓工欲善其事必先利其器,所以我们首先要知道的事情就是该去哪里下载Xcode,有以下几个途径. 途径一:通过AppStore,下载.我们打开AppStore,在右上角的搜索框输入“xcode” 图1-

用C在GBA上写光线追踪(0)配置开发编译环境

前段时间用C#写了一个光线追踪程序,可以渲染圆球,平面这种基本图形,反射,光照,阴影,都大致尝试做了一下. ↑ C#实现的光线追踪     ↑ GBA上C实现的光线追踪 然而,在我打算继续深入优化的时候,我失去了我的好帮手强强电脑,换成了超极本.看来继续做技术密集型光线追踪是不行的了.就在这时,我看到了一些GBA的开发文章,我又刚好有一台GBA,于是我产生了一个大胆的想法——在GBA上实现光线追踪.GBA架构清晰简明,入手门槛低,而且还有一个官方的编程指南,很适合我这种人折腾. 旧版GBA 在写

Lua学习之【1】:Mac平台下环境的搭建及Hello Lua的输出与编译

1.下载Lua安装包 下载地址:http://www.lua.org/download.html,目前最新的Lua是5.2.3.解压得到doc.src.Makefile.README共4个文件. 2.编译Lua环境 1)控制台下cd  Lua解压路径.2)执行make  平台,我是Mac,所以执行make macosx:3)在src中生成lua和luac两个可执行 文件,这两个文件可以单独拿出来,比如我们在Lua解压路径下创建bin目录,将生成的可执行文件放进去. 3.Hello Lua 1)控

C++教程 零基础如何学习C语言!

学习一门技术不是所想的很简单的一回事,学习C语言同样也不是一件简单的事!学好C语言,你想在短时间内学好,肯定是不可能的,但是也不需要你花个十年八年才嫩恶搞精通.今天小编就针对0基础的学员推荐给你们基本书籍以及技巧! 一.要读就读好书,否则不如不读 所有初学者面临的第一个问题便是:如何选择教材.好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素.不幸的是,学校通常会帮你指定一本很差劲的C语言课本;而幸运的是,你还可以再次选择. 大名鼎鼎的谭浩强教授出了一本<C语言程序设计>,据说发行量

学习C++语言的50条忠告

50条忠告:(其中有几条觉得写的不够贴切,所以删了,发了余下的部分) 1.把C++当成一门新的语言学习: 2.看<Thinking In C++>,不要看<C++变成死相>: 3.看<The C++ Programming Language>和<Inside The C++ Object Model>,不要因为他们很难而我们自己是初学者所以就不看: 4.不要被VC.BCB.BC.MC.TC等词汇所迷惑——他们都是集成开发环境,而我们要学的是一门语言: 5.不

世界上最好的语言是什么,现在终于有了答案

世界上最好的语言是什么?一直以来这都是程序员们很喜欢争论的话题. 我们先来借助一些工具来看一看最早是什么时候出现这种言论的. 这是 Google 上按时间(2000年1月1日到2002年1月1日)搜索的结果,但这几个网页现在已经打不开了,即使能打开内容也不一样了. 好在现在百度也提供了按时间来搜索的功能,我们再来看一下百度的结果: 可以看到,最早出现最好的程序语言的是2001年10月31号 swordhui 发布在CSDN上的(原网址在这里): 不论其他,仅从这一点上看,百度做的比google好