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

目录
相关文章
|
3月前
|
Linux iOS开发 开发者
Qt问题(二):无法定位程序输入点于动态链接库
动态链接库(Dynamic Link Library,简称DLL)是一种可执行文件格式,常见于Windows操作系统中,而在Linux和macOS等其他操作系统中,相似的概念通常被称为共享库(Shared Library)。动态链接库允许程序在运行时加载所需的代码和数据,而不是在编译时静态链接到应用程序中。这种方式带来了几个重要的优点:
305 3
|
3月前
|
Oracle 关系型数据库 Linux
讲解linux下的Qt如何编译oracle的驱动库libqsqloci.so
通过这一连串的步骤,可以专业且有效地在Linux下为Qt编译Oracle驱动库 `libqsqloci.so`,使得Qt应用能够通过OCI与Oracle数据库进行交互。这些步骤适用于具备一定Linux和Qt经验的开发者,并且能够为需要使用Qt开发数据库应用的专业人士提供指导。
102 1
讲解linux下的Qt如何编译oracle的驱动库libqsqloci.so
|
2月前
|
API 开发工具 C语言
C语言与图形界面:利用GTK+、Qt等库创建GUI应用。
C语言与图形界面:利用GTK+、Qt等库创建GUI应用。
83 0
|
2月前
|
Ubuntu Windows
ARM架构安装ubuntu系统
8月更文挑战第19天
381 0
|
2月前
|
IDE 编译器 开发工具
【Qt】如何搭建Qt开发环境
【Qt】如何搭建Qt开发环境
|
4月前
|
存储 编解码 Ubuntu
【QT】linux下alsa库的移植和QT中音视频的处理&笔记
【QT】linux下alsa库的移植和QT中音视频的处理&笔记
|
4月前
|
IDE Linux 开发工具
在Qt开发环境中qmake和cmake的区别优势
选择qmake还是CMake,主要取决于项目的需求和开发者的熟悉程度。如果你正在开发一个纯Qt项目,或者是一个不需要复杂构建脚本的小型项目,qmake可能是一个更好的选择。反之,如果你的项目需要处理复杂的依赖关系,或者你想要一个在多种编程环境中都能工作的构建系统,那么CMake可能是更好的选择。
481 2
|
4月前
|
计算机视觉
【轻松入门】OpenCV4.8 + QT5.x开发环境搭建
【轻松入门】OpenCV4.8 + QT5.x开发环境搭建
59 0
【轻松入门】OpenCV4.8 + QT5.x开发环境搭建
|
4月前
|
Ubuntu 编译器 C语言
蓝易云 - ubuntu上安装boost库为SOMEIP的X86和ARM下编译做准备(编译两种版本)
以上就是在Ubuntu上安装Boost库并为SOME/IP的X86和ARM架构编译做准备的全部步骤。
62 0
|
4月前
Cmake构建Qt项目链接glog库
Cmake构建Qt项目链接glog库