一、基础扫盲
Qt是什么?能吃吗?
Qt是一个著名的C++应用程序框架。Qt十分强大,不仅仅是GUI组件。Qt自己内设了很多C++没有的东西,不用再使用<String>,不用再使用数据库连接等。据我自己理解,Qt是一个强大的实现图形化界面的一个软件,基本机制有信号槽机制等,语言基于c++(所以学习过程要参考着c++来,后面会讲到的lambda就是c++11的内容),使用方便灵活。
Qt的环境:
Qt在lunux下运行。本次学习在VMware Workstation虚拟机下,Ubuntu环境下安装,这是我第一次接触虚拟机,下面会有一些专业词语扫盲(自己懂得实在是太少了== )。
学习目的:
本次学习是为了编一个程序,将来会嵌入到开发板上。
专业词汇扫盲:
ZedBoard--低成本开发板
root权限--系统权限的一种,与SYSTEM权限可以理解成一个概念,但高于Administrator权限,root是Linux和unix系统中的超级管理员 用户帐户,该帐户拥有整个系统至高无上的权力,所有对象他都可以操作,所以很多黑客在入侵系统的时候,都要把权限提 升到root权限,用windows的方法理解也就是将自己的非法帐户添加到Administrators用户组。
IDE--集成开发环境
Ubuntu--乌班图,一个以桌面应用为主的Linux操作系统
正则表达式--regular expression,描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者 从某个串中取出符合某个条件的子串等。
Gedit-- Linux 下的一个纯文本编辑器,但你也可以把它用来当成是一个集成开发环境 (IDE), 它会根据不同的语言高亮显现关键字和标 识符。
AXI--Advanced eXtensible Interface,一种总线协议,该协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。
FPGA--Field-Programmable Gate Array,现场可编程门阵列
qmake--一个协助简化跨平台进行专案开发的构建过程的工具程式,Qt附带的工具之一 。
cross-compiler 交叉编译器
二、Qt安装
安装什么:
需要安装Qt5,Qt Creator和Qt Lib,下载了4个安装包(Qt Lib下了两个),安装过程略繁琐,时间比较久,主要是有一些环境变量需要配置。加上看教程的时间,大概花了一天吧(我看教程比较慢,专业人员应该一上午就能装好)。我安装的是Qt5.5.1、Lunux下32bit的Creator,Qt Lib忘记了,应该是4.多的。
Ubuntu命令:
su--切换用户命令命令
sudo --获取临时的root权限命令,一般都会加上sudo
参考网址:
Qt5 和Qt Creator 主要参考的是懒兔子的博客,安装比较简单,提供了安装包。
博客地址 http://www.eefocus.com/nightseas/blog/12-11/288711_baf5c.html
安装包地址 http://download.qt.io/
另一个安装包地址
Qt Lib看的是另一个教程,更加清楚一些。除了在Ubuntu命令栏里输入一些东西外,还需要配置一些环境变量。但教程的是4.8.3的Qt Creator,我的是5.5.1的,有一些不太一样。在这里说明下:
点击Tools中的OPTIONS
编译器:
装完Qt Creator编写了一个HelloWorld程序,结果无法编译,才发现少了一个编译器。(Qt这点好坑)只好去网上重新下载了一个编译器,照着教程装上了。
网址:
三、发现的两本书
Computer Systems - A Programer's Perspective (2rd Edition)。中文译本是《深入理解计算机系统》
MIT开设的《Introduction To algorithm》,中文版叫《算法导论》