作为嵌入式攻城狮和程序猿,开发C语言程序才是工作正道
网上关于Linux下的C语言开发环境意见很多,基本有两种:
第一,用Vim or Emacs,纯文本方式,其核心在于整个Coding过程,双手都可以不离开键盘,熟练后,程序开发的思绪可以行云流水般泄到键盘,到达这一级别后,coding效率极高,这就是为啥那些前辈大师们,可以单枪匹马开发出Unix/Linux来。这很像学钢琴,刚刚开始,对着琴谱练习,很枯燥,很痛苦,当达到10级水平后的某一天,突然发先自己的情绪可以毫无阻碍的泄到钢琴琴键上,变成随情绪起伏的音符,且毫无停顿,这时候,你将体会到巨大的喜悦。但鉴于学习周期太长,而且嵌入式开发没有那么多代码要写,所以决定先绕开Vim or Emacs下编程
第二,用IDE。网上也有很多Linux下IDE的介绍,这些IDE
大同小异。软件中心里面有很多选择
![](data/attachment/album/201404/30/144614o686hrtvyhwde8y0.png)
由于自己开发NiosII时,使用的是Eclipse,所以就直接选用了Eclipse CDT
![](data/attachment/album/201404/30/144618ypmyrlw46p61q41m.png)
在
软件中心直接安装即可
但应用程序的最终运行目标处理器是ARM,所以安装的Ecplise暂时还不能编译ARM的可执行程序,但可以用来调试或测试一些代码片段,这还是很方便的。
总结一下:
桌面OS -- 安装Ubuntu,参考:
正式进入Linux世界
中文输入 -- 搜狗输入法,参考:
安装中文支持和搜狗输入法文档开发 -- WPS,参考:
安装WPS,
截图技巧娱乐 -- WebQQ, PPS, 网上听歌,参考:
使用QQ,PPSteam程序开发 -- Ecplise,参考本文
收发Email -- Thurderbird
启动程序 -- Bash
网页浏览 -- Firefox
安装删除软件 -- 软件中心
配置系统 -- 系统设置
学会上述几点,在Ubuntu下完成windows下的类似日常工作就可以了,当然,要涉及所属领域的工作,还需要学会专业领域下面的软件,我的兴趣在于嵌入式开发,所以深入了解Linux是我的目的,所以下面将学习Linux的基础知识和基本命令。
另外,一个前辈给我说,GNOME,KDE等桌面程序,本质上就是一个程序,一个跑在Linux内核上面的程序。这些图形化程序需要消耗大量的系统资源,比Linux内核消耗的资源还多,所以搞嵌入式开发,经常会在命令行环境下开发和调试程序,所以学习Linux基础命令是必要的。
再者,图形界面中,用户大量时间在于寻找操作在哪里,寻找文件在哪里,而在Linux命令行模式下,若熟悉了,可以快速定位操作对象和使用操作命令,工作效率将大大提高。
再者,在命令操作的学习过程中,可以渐渐熟悉Linux的基本知识/哲学/设计原理/习惯等等,总之,在这上面做积累就是正道。
附图是Ubuntu刚开机时,仅仅启动Gnome-system-monitor, 并鼠标拖动其显示窗口的资源占用情况
![](data/attachment/album/201404/30/14461928iddd7bbtpmkttd.png)
这与tty 中,执行vmstat,查到的CPU利用率基本为0,简直是天壤之别