Linux 下 Qt 4.6.0 嵌入式开发环境的搭建、移植
转自http://hi.baidu.com/jiyeqian/blog/item/f46d26a2ff3f7da6caefd0d6.html
Qt:qt-everywhere-opensource-src-4.6.0.tar.gz
嵌入式平台:2440
arm-linux-gcc:4.1.2,下载(我用4.3.2和4.4.1版本时,移植时都有段错误。我把它放在:/usr/local/arm/4.1.2/ 。)
将 qt-everywhere-opensource-src-4.6.0.tar.gz 压缩包解压为3份,分别编译 PC ,嵌入式 x86 和 arm 三个版本。
1. 编译 PC 版:
$ ./configure
$ make
# make install
2. 编译嵌入式x86版:
$ ./configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb
$ make
# make install
编译安装PC版中的 qvfb:
$ cd ***/qt-everywhere-opensource-src-4.6.0/tools/qvfb
$ make
# cp ***/qt-everywhere-opensource-src-4.6.0/bin/qvfb /usr/local/Trolltech/QtEmbedded-4.6.0/bin
3. 编译嵌入式arm版(需要 arm-linux-gcc 的支持):
编译tslib对触摸屏支持:
编译tslib需要安装
sudo apt-get install autoconf
sudo apt-get install automake
sudo apt-get install libtool
下载,tslib1.4.tar.gz,解压后:
#cd tslib/
#export CC=/usr/local/arm/4.1.2/bin/arm-linux-gcc
#export CXX=/usr/local/arm/4.1.2/bin/arm-linux-g++
运行
#./autogen.sh
#echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache
配置安装参数
#./configure --host=arm-linux --cache-file=arm-linux.cache --enable-inputapi=no PLUGIN_DIR=/usr/local/arm/tslib/plugins -prefix=/usr/local/arm/tslib/build -host=arm-linux --cache-file=arm-linux.cache 2>&1 | tee conf_log
编译
#make 2>&1 | tee make_log
#make install
这样做的原因是
李先静 老师的博客之《交叉编译场景分析(arm-linux)(二)--编译tslib》,他对这个问题理解很透彻,下面引用原话>>>>:
在当前目录查找了rpl_malloc,发现configure里有#define malloc rpl_malloc一行。分析configure 脚本相关的代码,原来是ac_cv_func_malloc_0_nonnull引起的,OK我们不让它检查了,产生一个cache文件arm-linux.cache,欺骗configure:
[root@linux tslib]# echo "ac_cv_func_malloc_0_nonnull=yes" >$ ARCH -linux.cache
[root@linux tslib]# ./configure --prefix=$(ROOTFS_DIR)/usr --host=$ ARCH -linux --cache-fil
相关文档:
解压工具(无打包功能):
-------------------------------
j——bzip2、bunzip2
z——gzip、gunzip
Z——compress、uncompress
解压工具(有打包能力):
-------------------------------
zip、unzip
rar、unrar
压缩包*.tar.gz或者*.tgz的解压
----------------------- ......
++实现RedHat非正常关机的自动磁盘修复
先登录到服务器,然后在/etc/sysconfig里增加一个文件autofsck,内容如下:
AUTOFSCK_DEF_CHECK=yes
PROMPT=yes
++改变文件或目录之最后修改时间(变为当前时间)
执行格式:touch name ( name 可为文件或目录名称。)
++如何设置login后欢迎信息
修改/etc/motd,往里面写入文本 ......
学习操作系统时我们都了解到文件系统是操作系统的重要组成部分之一。文件系统有很多种类型,比Windows的fat、fat32;Linux的ext、ext2或ext3;FreeBSD的ufs等等。在使用Linux的过程,也常常Linux操作系统使用虚拟文件系统VFS,通过VFS可以直接存取其它已被内核支持的各种文件系统,用起来就像是在普通的 Linux的ext系列文 ......
文章来源:http://www.ibm.com/developerworks/cn/linux/l-memmod/index.html
级别: 初级
Vikram Shukla (vikshukl@in.ibm.com), 软件工程师, IBM
2006 年 2 月 23 日
在这篇 Linux® 内存模型指南中,我们将学习如何构建和管理内存方面的基础知识。本指南介绍了内存控制单元、分页模型方面的内容,并详细介绍了物理 ......