开发者社区> shy丶gril> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

s3c2410上搭建QT/Embedded4.8.5开发环境(二)--安装arm平台qt库qt-everywhere-opensource-src-4.8.5

简介:
+关注继续查看

【目标板】s3c-2410

【虚拟机】CentOS6.4 kernel-2.6.32

【编译器】gcc-4.4.6

【交叉编译器】arm-linux-gcc 4.3.2

安装并配置交叉编译器arm-linux-gcc4.3.2

①下载交叉编译包,

大家也可以选择自己编译并搭建arm-linux-gcc, 但是那样很麻烦,我们不如直接用网络上已经编译好的

②安装编译器

两个不同版本的编译器,大家可以自行选择一个安装,其实4.3.2已经能满足我们的需求,
两个版本解压缩目录有点差别,但是主要目录是相同的,都包含一个由版本号命名的文件夹,那个文件夹就是编译器的主目录了
1--解压缩的命令我就不说了,tar就可以很简单
2--我习惯上把交叉编译器安装到/usr/local/arm/下,不同的编译器就分别建一个不同的文件夹,这样我们把解压后编译器的主目录复制到/usr/local/arm下即可
如果您选择使用的是arm-linux-gcc4.3.2,它解压缩后目录为opt/FriendlyArm/toolschain/4.4.3, 其编译器主目录就是4.4.3,如果嫌后面的配置麻烦,大家可以直接将整个文件解压复制到/opt下,但是我不喜欢这个目录结构, 而且往往我们机子上会安装多个版本的arm-gcc交叉编译器,我们只将4.4.3拷贝到/usr/local/arm下
如果是arm-linux-gcc4.4.3
  1. tar -xvf arm-linux-gcc-4.4.3.tar.gz   
  2. cp -rf $PWD/opt/FriendltArm/toolschain/4.4.3    /usr/local/arm/  
tar -xvf arm-linux-gcc-4.4.3.tar.gz 
cp -rf $PWD/opt/FriendltArm/toolschain/4.4.3    /usr/local/arm/
如果是arm-linux-fcc-4.3.2,它的目录结构刚好是我们想要的
  1. tar -xvf arm-linux-gcc-4.4.3.tgz   
  2. cp -rf $PWD/usr/local/arm/4.3.2    /usr/local/arm/  
tar -xvf arm-linux-gcc-4.4.3.tgz 
cp -rf $PWD/usr/local/arm/4.3.2    /usr/local/arm/
或者干脆
  1. tar -xvf arm-linux-gcc-4.3.2.tgz -C /  
tar -xvf arm-linux-gcc-4.3.2.tgz -C /

③配置环境变量

打开/etc/profile文件(修改此文件对所有用户有效)或者~/.bash_profile或者~/.bashrc下
添加如下行
  1. PATH = $PATH:/usr/local/arm/4.3.2/bin  
  2. export PATH  
PATH = $PATH:/usr/local/arm/4.3.2/bin
export PATH
如果有多个交叉编译器版本
  1. #PATH = $PATH:/usr/local/arm/3.4.1/bin  
  2. PATH = $PATH:/usr/local/arm/4.3.2/bin  
  3. #PATH = $PATH:/usr/local/arm/4.4.3/bin  
  4. export PATH  
#PATH = $PATH:/usr/local/arm/3.4.1/bin
PATH = $PATH:/usr/local/arm/4.3.2/bin
#PATH = $PATH:/usr/local/arm/4.4.3/bin
export PATH
然后想使用哪个就打开哪个,而把其他的注释掉
最后注销重新登录,就可以使用环境变量了
如果不想注销,可以source一下修改的环境变量配置文件,但是source只对当前终端有效,终端关闭后必须重新source
  1. source ~/.bash_profile  
source ~/.bash_profile

④确认安装

最后在终端中输入
  1. arm-linux-gcc -v   
arm-linux-gcc -v 
就可以查看版本, 出现版本信息说明安装成功


  1. 下面的步骤需要注意一下,我们编译qt和tslib时候,其实是分别编译的,但是大家开发项目很多情况下,是技术搭好环境然后将编译好的库打包,交给我们直接使用(打包的过程我们后面会讲),这样为了防止打包qt时tslib库丢失的问题,我们可以讲tslib库编译后安装按qt的目录下,或者拷贝到qt的目录下, 这样我们无论在哪台机器上,将打包好的库直接解压,就可以使用了  
下面的步骤需要注意一下,我们编译qt和tslib时候,其实是分别编译的,但是大家开发项目很多情况下,是技术搭好环境然后将编译好的库打包,交给我们直接使用(打包的过程我们后面会讲),这样为了防止打包qt时tslib库丢失的问题,我们可以讲tslib库编译后安装按qt的目录下,或者拷贝到qt的目录下, 这样我们无论在哪台机器上,将打包好的库直接解压,就可以使用了


安装tslib触摸屏校准库

触摸屏软件 tslib1.4.tar.gz tslib是触摸屏校准的库,这个是tslib源码,可以移植到嵌入式设备中对触摸屏进行校准在采用触摸屏的移动终端中,触摸屏性能的调试是个重要问题之一,因为电磁噪声的缘故,触摸屏容易存在点击不准确、有抖动等问题。
Tslib是一个开源的程序,能够为触摸屏驱动获得的采样提供诸如滤波、去抖、校准等功能,通常作为触摸屏驱动的适配层,为上层的应用提供了一个统一的接口。在Qtopia 4.*版本中,默认的Tslib版本为Tslib 1.4。在Qtopia 2.*版本中,默认的Tslib版本为Tslib 1.3

1.解压缩:
  1. tar -zxvf tslib1.4.tar.gz  
tar -zxvf tslib1.4.tar.gz
2.运行./autogen.sh
  1. ./autogen.sh  
./autogen.sh
./autogen.sh: 4: autoreconf: not found
 是在不同版本的 tslib 下执行 autogen.sh 产生。它们产生的原因一样,是因为没有安装
  automake 工具,      (ubuntu 8.04)用下面的命令安装好就可以了。
  sudo apt-get install autoconf automake libtool
3.生成makefile
  1. ./configure --host=arm-linux --prefix=/opt/tslib-1.4  ac_cv_func_malloc_0_nonnull=yes  
./configure --host=arm-linux --prefix=/opt/tslib-1.4  ac_cv_func_malloc_0_nonnull=yes
4.make
5 make install

编译并安装qt-4.8.5-arm

1--解压缩
  1. tar -xvf qt-everywhere-opensource-src-4.8.5.tar.gz   
  2. cp -rf qt-everywhere-opensource-src-4.8.5 qt-4.8.5-arm-src   
  3. cd qt-4.8.5-arm-src  
tar -xvf qt-everywhere-opensource-src-4.8.5.tar.gz 
cp -rf qt-everywhere-opensource-src-4.8.5 qt-4.8.5-arm-src 
cd qt-4.8.5-arm-src
2 配置生成makefie
  1. ./configure -v -prefix /opt/qt-4.8.5-arm -opensource -confirm-license -embedded arm -release -shared -fast -no-largefile -qt-sql-sqlite -qt3support -no-xmlpatterns -no-glib -no-phonon -no-mmx -no-3dnow -no-sse -no-sse2 -no-svg -webkit -qt-zlib -qt-libtiff -qt-libpng -qt-libjpeg -make libs -make tools -make examples -make demos -make translations -no-nis -no-cups -iconv -no-dbus -xplatform qws/linux-arm-g++ -little-endian -qt-freetype -depths 16,24,32 -qt-gfx-linuxfb -qt-gfx-transformed -qt-gfx-multiscreen -no-gfx-vnc -no-gfx-qvfb -qt-kbd-linuxinput -no-kbd-qvfb -armfpa -no-mouse-qvfb -qt-mouse-linuxtp -qt-mouse-tslib -DQT_QLOCALE_USES_FCVT -I/opt/tslib-1.4/include -L/opt/tslib-1.4/lib  
./configure -v -prefix /opt/qt-4.8.5-arm -opensource -confirm-license -embedded arm -release -shared -fast -no-largefile -qt-sql-sqlite -qt3support -no-xmlpatterns -no-glib -no-phonon -no-mmx -no-3dnow -no-sse -no-sse2 -no-svg -webkit -qt-zlib -qt-libtiff -qt-libpng -qt-libjpeg -make libs -make tools -make examples -make demos -make translations -no-nis -no-cups -iconv -no-dbus -xplatform qws/linux-arm-g++ -little-endian -qt-freetype -depths 16,24,32 -qt-gfx-linuxfb -qt-gfx-transformed -qt-gfx-multiscreen -no-gfx-vnc -no-gfx-qvfb -qt-kbd-linuxinput -no-kbd-qvfb -armfpa -no-mouse-qvfb -qt-mouse-linuxtp -qt-mouse-tslib -DQT_QLOCALE_USES_FCVT -I/opt/tslib-1.4/include -L/opt/tslib-1.4/lib
3make编译
  1. make  
make
这个过程比较漫长,根据您机器的配置从几个小时到十几个小时不能,我大概编译了10个小时左右, 学校机子比较破
4-安装
  1. make install  


转载:http://blog.csdn.net/gatieme/article/details/22919963

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【OpenGL ES】OpenGL ES 2.0 -- 制作 3D 彩色旋转三角形 - 顶点着色器 片元着色器 使用详解(二)
【OpenGL ES】OpenGL ES 2.0 -- 制作 3D 彩色旋转三角形 - 顶点着色器 片元着色器 使用详解(二)
63 0
【OpenGL ES】OpenGL ES 2.0 -- 制作 3D 彩色旋转三角形 - 顶点着色器 片元着色器 使用详解(三)
【OpenGL ES】OpenGL ES 2.0 -- 制作 3D 彩色旋转三角形 - 顶点着色器 片元着色器 使用详解(三)
40 0
【OpenGL ES】OpenGL ES 2.0 -- 制作 3D 彩色旋转三角形 - 顶点着色器 片元着色器 使用详解(一)
【OpenGL ES】OpenGL ES 2.0 -- 制作 3D 彩色旋转三角形 - 顶点着色器 片元着色器 使用详解(一)
28 0
OS X开发:NSTextField文本输入框
OS X开发:NSTextField文本输入框
68 0
+关注
1876
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载