Qt-embedded-linux-opensource-src-4.5.1移植到mini2440

编译和移植qt-embedded-linux-opensource-src-4.5.3 最初的动机是不想使用qtopia来开发qt界面,在网上搜索到qt/embedded也是可以解决的。在网上搜索了好多关于这方面的内容,我找了一个亲身实践的来讲吧。开发平台:Ubuntu 9.10目标平台:hfrk s3c2410交叉工具:arm-linux 版本4.1.2qt版本:qt-embedded-linux-opensource-src-4.5.3 下载地址:ftp://ftp.qt.nokia.com/qt/source/qt-embedded-linux-opensource-src-4.5.3. 阅读详情
Qt-embedded-linux-opensource-src-4.5.1移植到mini2440开发板技术说明

 

 

用过友善之臂的朋友都知道,友善之臂mini2440内置的是qt2的界面设计,但是现在q4逐渐成为主流。如何把qt4成功移植到mini2440非常不容易,本人也费了很到的功夫才完成了这样的工程。现在我把自己的经验拿出来与大家分享,希望有兴趣的朋友少走弯路。

 

1.我的环境及所需资源:

   PC机操作系统:ubuntu

   交叉编译工具:arm-linux-gcc-4.3.2.tar.gz

   所需资源:  tslib-1.4.tar.gz qt-embedded-linux-opensource-src-4.5.1.tar.gz

               qt-x11-linux-opensource-src-4.5.1.tar.gz

2.安装交叉编译环境:

   把arm-linux-gcc-4.3.2.tar.gz放到/tmp 目录下

   # tar xzvf arm-linux-gcc-4.3.2.tar.gz -C /

   #gedit /root/.bashrc

   这是编辑/root/.bashrc文件,在最后一行 export PATH=$PATH:/usr/local/arm/4.3.2/bin

   注销系统

   #arm-linux-gcc -v 可以看到版本信息

3,安装tslib-1.4

    这是个触摸屏的库文件,据网上说qt4只支持tslib-1.4。我没有实验别的,就用了这个,可以成功。

    把tslib-1.4.tar.gz放到/home目录下

    #tar xvzf tslib-1.4.tar.gz

   解压,cd 到其目录下
           安装automake,autoconf,libtool
           #sudo apt-get install automake autoconf libtool

    #cd tslib

    #./autogen.sh

    #./configure --prefix=/home/mytslib/ --host=arm-linux ac_cv_func_malloc_0_nonnull=yes

    #make

    #make install

    这样以后可以看到/home/mytslib/下有了库文件,移植时会用到!先不详细说明。

4.安装qt-x11-linux-opensource-src-4.5.1.tar.gz

    把qt-x11-linux-opensource-src-4.5.1.tar.gz放到/opt目录下

    #tar xvzf qt-x11-linux-opensource-src-4.5.1.tar.gz

    #cd qt-x11-linux-opensource-src-4.5.1

    #./configure

    #gmake      //过程很长,我用的三个多小时

    #gmake install

    这是安装PC机上的qt4,方便设计,在PC机上能够成功了,在交叉编译就方便了!然后制作一个运行环境变量的文件,方便改变环境变量设置,如下在当前文件夹下接着输入

    #gedit setenv-x11.sh

这时会跳出来一个编辑文本,在里面输入:

    PATH=/usr/local/Trolltech/Qt-4.5.1/bin:$PATH

    QTDIR=/usr/local/Trolltech/QT-4.5.2

    MAINPATH=$QTDIR/man:$MAINPATH

    LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

    export PATH QTDIR MAINPATH   LD_LIBRARY_PATH

然后保存!在每次进入qt-x11-linux-opensource-src-4.5.1目录中要 #source setenv-x11.sh

把环境变量设置好。

5,安装qt-embedded-linux-opensource-src-4.5.1.tar.gz

    把qt-embedded-linux-opensource-src-4.5.1.tar.gz放到/tmp目录下

    在安装qt-embedded-linux-opensource-src-4.5.1.tar.gz之前先在根目录下建立两个目录(即文件夹)如下步骤:

    #cd /     进入根目录

    #mkdir mini2440   这里准备存放qt-embedded-linux-opensource-src-4.5.1的库文件

   现在安装qt-embedded-linux-opensource-src-4.5.1.tar.gz

    #cd /tmp  确定qt-embedded-linux-opensource-src-4.5.1.tar.gz放到/tmp目录下了才行

    #tar xvzf qt-embedded-linux-opensource-src-4.5.1.tar.gz

    #cd qt-embedded-linux-opensource-src-4.5.1.

    #./configure -prefix= /mini2440   -release -shared -fast -pch -no-qt3support -qt-sql-sqlite -no-libtiff -no-libmng -qt-libjpeg -qt-zlib -qt-libpng -qt-freetype -no-openssl -nomake examples -nomake demos -nomake tools -optimized-qmake -no-phonon -no-nis -no-opengl -no-cups -no-xcursor -no-xfixes -no-xrandr -no-xrender -no-xkb -no-sm -no-xinerama -no-xshape -no-separate-debug-info -xplatform qws/linux-arm-g++ -embedded arm -depths 16 -no-qvfb -qt-gfx-linuxfb -no-gfx-qvfb -no-kbd-qvfb -no-mouse-qvfb -qt-kbd-usb -confirm-license -qt-mouse-tslib -I/home/mytslib/include -L/home/mytslib/lib

mini2440内的空间有限,所以剪裁很多,注意最后的部分是为了找到触屏的库文件,然后

    #make

    #make install

    这样,嵌入式版本的qt4也装成功了,若想进行交叉编译,首先也得改变环境变量,所以也可以在当前目录下建一个环境变量的文件setenv-embedded.sh 如下:

   #gedit setenv-embedded.sh

这时跳出一个编辑文本输入:

    PATH=/mini2440/bin:$PATH

    QTDIR=/mini2440

    MAINPATH=$QTDIR/man:$MAINPATH

    LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

    export PATH QTDIR MAINPATH   LD_LIBRARY_PATH

保存退出。每次进行qt4-embedded的交叉编译前先# source setenv-embedded.sh

 

到目前为止,两个版本的qt4在PC机上的安装算是结束了,下一步要移植嵌入式的qt4库文件到开发板。

6.制作库文件

   前面介绍了在根文件系统下建立两个目录mini2440和tslib1.4.经过第5步后,mini2440内已经有了库文件,现在把触屏的库文件移植到tslib目录。

在根文件的mini2440文件中除了有lib目录,还有bin,examples等目录,但是移植到开发板的文件只需要mini2440下的lib目录。Lib目录有30多兆,若太大,可以删除/lib/fonts中的一些字体!我的没有删除任何字体!我的mini2440是64兆的,剩余大概13兆了,显然不够,于是我把它自带的Qt2的库文件及有关qt2的文件全删除了(所以现在没有办法运行qt2),剩余47兆,足够运行qt4.那么接下来解释移植的过程了:

   首先,在超级终端下操作开发板,在开发板的根目录下建立两个目录mini2440和tslib,一样的方法:

#mkdir mini2440   注意这是对开发板的操作,不再是PC机了!

     然后,不你是用什么方法,要把PC机根目录下/mini2440里的lib目录(整个文件件)(其他的如bin等都不用)全部拷到开发板根目下的/mini2440中,同理把要把PC机根目录下/home里的mytslib目录(整个文件件)全部拷到开发板根目下的根目录中.

    你可以用串口传输 ,或者优盘传输,或者nfs等,最终的效果是开发板根目录下的/mini2440中有QT4的lib,根目录有触屏的tslib目录

    最后,就是设置开发板的环境变量了:在超级终端里的命令行下输入:

#vi /etc/profile

把下面的全部加到profile的最后面

export QTDIR=/mini2440

export T_ROOT=/tslib

export PATH=$QTDIR/bin:$PATH

export TSLIB_CONSOLEDEVICE=none

export TSLIB_FBDEVICE=/dev/fb0

export TSLIB_TSDEVICE=/dev/input/event0

export TSLIB_PLUGINDIR=$T_ROOT/lib/ts

export TSLIB_CONFFILE=$T_ROOT/etc/ts.conf

export TSLIB_CALIBFILE=/etc/pointercal

export QWS_MOUSE_PROTO=tslib:/dev/input/event0

export LD_LIBRARY_PATH=$T_ROOT/lib:$QTDIR/lib

 然后编辑/tslib/etc/ts.conf,把第二行的#module_raw input前面的#号去掉

到目前位置,这个移植过程算是结束了,这样就可以成功了!够详细了吧!前提是你按照这个步子正确的走了!

你可以进入/tslib/bin下运行下ts_calibrate来初始化触摸屏

7,例子 hello world!

   A,PC机下编译:

     进入PC机中/opt/qt-x11-linux-opensource-src-4.5.1

     #cd /opt/qt-x11-linux-opensource-src-4.5.1.

     #source setenv-x11.sh   改变环境变量,设置为适合pc机的开发环境

     #mkdir hello         

     #cd hello  进入hello目录

     #vi hello.cpp  编写hello world 程序,在hello.cpp中输入以下代码:

                   #include <QApplication> 

                   #include <QPushButton>

 

                  int main(int argc, char *argv[])

                  {

                        QApplication app(argc,argv);

                        QPushButton b("Hello World !");

                        b.show();

                     QObject::connect(&b,SIGNAL(clicked()),&app,SLOT(quit()));

                     return app.exec();

                   }

保存退出。然后在当前目录下继续执行以下命令:

   #qmake -project

   #qmake 

   #make

   #ls

这时在这个目录下可以看到生成了可执行文件hello,然后

   #./hello

你会发现,跳出了一个hello world的对话框,这样一个简单的界面就成功了

B,交叉编译

  首先把/opt/qt-x11-linux-opensource-src-4.5.1下的hello目录拷到/tmp/qt-embedded-linux-opensource-src-4.5.1目录下

#cp -fr /opt/qt-x11-linux-opensource-src-4.5.1/hello /tmp/qt-embedded-linux-opensource-src-4.5.1

#cd  /tmp/qt-embedded-linux-opensource-src-4.5.1

#source setenv-embedded.sh   这一步很关键,否则你交叉编译不了,改变的环境变量

#cd hello

#make clean

#qmake -project             重新生成.pro

#qmake                    重新生成适合交叉编译的Makefile

#make

这时候,你发现有hello 的可执行文件,原来的hello已经被替换掉了,现在这个hello文件是适合开发板运行的!这时候你如果执行./hello是不会有界面的,把它放到开发板的文件系统下才会有界面(前提是设置好了开发板的环境变量,具体看下一步)

C,移植到开发板

   把刚才在/tmp/qt-embedded-linux-opensource-src-4.5.1/hello下生成的hello可执行文件移植到开发板的根目录下(可自己选择存放位置),你可以用串口传送,优盘传送或者nfs,不管怎样,最后的结果是在超级终端下可以看到开发板的文件系统中有hello,我是放在了根目录下,然后在超级终端下操作开发板:

   #chmod +x hello   增加它的可执行权限

  

但目前为止,环境变量设置成功 可以通过echo命令查看是否成功,如echo $QTDIR

最后执行:

  #./hello -qws   你会发现开发板的屏幕上上有了hello world的界面了!

摘http://blog.sina.com.cn/s/blog_492448510100gdbf.html

自己修改了一下地方

qt-embedded-linux-opensource-src-4.5.2.tar.gz 立即下载

相关推荐

qt-embedded-linux-opensource-src-4.5.3.tar.gz 移植

qt-embedded-linux-opensource-src-4.5.3.tar.gz 移植

qt-embedded-linux-opensource-src-4.5.1成功移植到micro2440

 开发环境OS:FC8GCC:4.3.0交叉编译:arm-linux-g++ 4.2.3Qt版本 qt-embedded-linux-opensource-src-4.5.1.tar.gz 触摸屏 tslib1.4  在此过程中我也参考了很多其他的方法但是linux不同的机子不同的环境不可能完全照搬,我几乎把网上所有能找到的关于qt移植的都找遍了通过一周的痛苦摸索,才弄出来

个人笔记共同分享 2110

保姆级教程:用LoRA微调Chinese-Mistral-7B模型,并一键部署到Ollama(附完整代码)

本文提供了一份详细的LoRA微调Chinese-Mistral-7B模型的保姆级教程,涵盖环境配置、数据预处理、微调实战、模型量化及Ollama部署全流程。通过实战案例和完整代码,帮助开发者快速构建专属中文大模型,适用于医疗、法律等垂直领域。

weixin_30369041的博客 250

linux开发板添加qt库文件_qt-embedded-linux-opensource-src-4.5.3安装及为开发板移植Qt库...

系统环境:主机操作系统:Fedora10主机编译器:gcc版本 4.3.2交叉编译器:arm-linux-gcc4.3.3软件安装包:qt-embedded-linux-opensource-src-4.5.3.tar.gzqt-x11-opensource-src-4.5.3.tar.gz前提条件:要先把板子的LCD和触屏驱动以及tslib1.4移植好,具体参考TQ2440触摸屏驱动及tsli...

weixin_39982452的博客 574

HX720数据采集实战:从硬件连接到姿态解析(含避坑指南)

本文详细介绍了HX720高精度ADC芯片在数据采集与姿态解析项目中的实战应用。内容涵盖从硬件电路设计、驱动源码编写与优化,到原始数据处理、校准以及最终姿态角度计算的完整流程,并提供了关键的避坑指南和调试技巧,帮助开发者高效完成从传感器信号到可用姿态数据的转换。

i8j9k0l1的博客 488

Langfuse实战:从评估打分到问题解决的完整指南

本文详细介绍了如何利用开源LLM工程平台Langfuse对AI应用进行系统性评估与优化。从创建评估数据集、设计自动化评分函数,到深入排查常见问题并关联Trace进行精准打分,提供了完整的实战指南。最后,探讨了如何利用评估结果驱动提示词迭代与A/B测试,并给出了生产环境部署与性能优化的关键考量,帮助开发者构建可测量、可分析、可改进的LLM应用。

backprop5master的博客 651

安装qt-embedded-linux-opensource-src-4.5.3 记录

1.安装交叉编译器 sudo apt-get install arm-linux-g++ 4.1.2  // 4.1.2 为版本号,版本太高会编不过   2.下载Qt源码          下载地址:http://download.qt-project.org/archive/           文件名:qt-embedded-linux-opensource-src-4.5

xiarong715的专栏 1289

嵌入式定点PID控制器:mrm-pid极简实现与实时控制实践

PID控制器是自动控制领域的基础算法,其核心在于比例、积分、微分三环节的协同调节。在资源受限的嵌入式系统中,传统浮点PID易受时序抖动、内存分配不确定性及FPU依赖影响,难以满足毫秒级确定性响应需求。定点PID通过整数运算替代浮点计算,显著提升执行周期稳定性与跨平台兼容性,成为电机控制、传感器补偿等实时场景的关键技术路径。mrm-pid库以位置式结构、int32_t增益参数、int64_t积分累加器和无动态内存设计,实现了超低开销(12–28 CPU周期)与完全可审计的闭环内核,天然适配Cortex-M系列

weixin_31659095的博客 571

qt-embedded-linux-opensource-src-4.5.3在飞凌2440上的成功移植

若用别的交叉编译器最好先查看下交叉编译器所能支持的最低版本的内核,否则会出现kenel is too old 错误,用file libc-so.xx查看, libc-so.xx在交叉编译器的lib下 虚拟机:vmware 8.0 Ubuntu: 内核 linux 2.6.28 交叉编译器:arm-linux-3.4.1(可以到这下载http://download.csdn.net/detai

tongsean的专栏 2255

保姆级教程:手把手教你用Jacquard V2数据集训练机器人抓取模型(附完整代码)

本文提供了一份详细的保姆级教程,手把手教你使用Jacquard V2数据集训练机器人抓取模型。从环境配置、数据准备到模型架构设计、训练优化和实际部署,全程解析并附完整代码,帮助开发者快速掌握视觉抓取技术。

weixin_29031057的博客 314

破解雪球网acw_sc__v2加密与无限debugger反爬策略

本文详细解析了雪球网的反爬机制,重点破解了其核心的acw_sc__v2加密参数与无限debugger反调试策略。通过实战案例,从抓包分析、逆向调试到算法还原,提供了完整的Python代码实现,帮助开发者掌握应对类似加密反爬的通用方法。

weixin_29207533的博客 1897

arm-linux-ld segment fault,Qt移植学习之路 QT4.5.3至mini2440

本文介绍的是Qt移植学习之路 QT4.5.3至mini2440,终于成功移植QT 4.5.3至mini2440,并能运行QT自带的应用程序,总得来说还算很顺利,下面是我移植的全部过程。首先,我交待一下我的开发环境:宿主机:Fedora9主机Gcc:gcc 版本 4.3.0 20080428 (Red Hat 4.3.0-8) (GCC)交叉编译器:arm-linux-gcc-4.3.2 (友善光盘...

weixin_32641973的博客 327

包络检波电路(Envelope Detector)

把 100 kHz 载波想象成"电台的高频信号",把 1 kHz 包络想象成"主持人说话的声波"。而今天电路的工作,就是把这个"调大调小的外壳"(包络)重新剥出来,还原成主持人的声音 🎵。这是三极管开关电路的重要搭档,也是从"二极管家族"过渡到"三极管家族"的桥梁 🔌。——倍压整流看的是"幅值累积"(多个电容接力),包络检波看的是"频率分离"(高低频分开)。同样的"D1 串联 + RC 并联"拓扑,今天被赋予了"AM 解调"的新生命。——电感负载的"泄洪闸",保护三极管开关不被反向电动势击穿。

飞多学堂的博客 94

在mini2440上移植qt embedded for linux 4.5.2

【实验环境】 1、主 机:Fedora9 DVD 发行版 2、目标机:mini2440友善之臂 3、源码包: ftp://ftp.qtsoftware.com/qt/source/qt-embedded-linux-opensource-src-4.5.2.tar.gz

华清远见 | 程序员的学习天堂 753

yolov8涨点系列之Concat模块改进

yolov8涨点系列之Concat模块改进

zhang1379的博客 2950

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

qt-embedded-linux-opensource-src-4.8.6 + tslib-1.4 + qwt-6.0.2 编译和移植到mini2440开发板

tslib-1.4安装准备 需要linux系统安装1. automake   2.autoconf   3. libtool   这三个包   tslib-1.4安装 1 [root@localhost ~]#./autogen.sh 2 [root@localhost ~]#echo "ac_cv_func_malloc_0_nonnull=yes" >arm-none-linux-g

Puls的专栏 1974

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

qt-embedded-linux-opensource-src-4.5.2 交叉编译

交叉编译环境搭建1、交叉编译器和QT 版本交叉编译器版本    arm-2007q3-51-arm-none-linux-gnueabi-i686.tar.bzQT 版本    qt-embedded-linux-opensource-src-4.5.2.tar.bz22、交叉编译器的安装    # tar jxvf arm-2007q3-51-arm-none-linux-gnueabi-i686.tar.bz –C /usr/local/arm1、  将QT 源码复制到/home目录下解压缩# tar

yel617的专栏 2763

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

交叉编译qt-embedded-linux-opensource-src-4.5.1源码

作者:孙晓明,华清远见嵌入式学院讲师。首先要有配置好的环境,本文使用的编译环境如下: 主机系统:Ubuntu 8.10主机编译器:gcc 版本 4.3.2 交叉编译器:arm-softfloat-linux-gnu-gcc软件资源:qt-embedded-linux-opensource-src-4.5.1.tar.gz              qt-x11-opensour

华清远见 | 程序员的学习天堂 1565

Qt-Embedded4.5 for linux交叉编译

这个过程是在ubuntu8.10下验证通过的。这是从网上搜索之后整理的。在qt的配置那条语句,可以根据自己的需要些相关参数。具体参见configure的help里面。其他的其他的就是这个过程 一、下载qt-embedded-linux-opensource-src-4.5.0.tar.gzqt-x11-opensource-src-4.5.0.tar.gz

benjamin_xc的专栏 879

qt-embedded-linux-opensource-src-4.5.3移植到s3c6410

首先要有配置好的环境,本文使用的编译环境如下: 主机系统:Ubuntu 9.10 主机编译器:gcc 版本 4.4.1 交叉编译器:arm-linux-gcc-4.0.1 软件资源:qt-embedded-linux-opensource-src-4.5.3.tar.gzqt-x11-opensource-src-4.5.1.tar.gz 移植过程...

weixin_34355715的博客 181

linux 4.5 通用arm内核,qt embedded-linux 4.5.2+arm移植开发环境搭建全攻略

折腾了一天多,终于弄通了达到的效果是,无论当前你的PC Linux上已经安装的qt版本多么复杂实现 qt 4.5.2 在PC上模拟编译执行 + ARM上的qt embedded-linux 4.5.2交叉编译(tslib触屏支持)+直接使用Qt Creator在pc上开发PC、板子都能跑的程序实现以上功能,真的体会到Qt真TMD的,繁琐复杂又强大整个过程也是充满曲折的,网上资料概念上的误导无处不在...

weixin_33977645的博客 358

linux qt开发嵌入式规范,Linux下搭建嵌入式Qt开发环境

主机环境:fedora 14编译器:gcc 4.5.1交叉编译器:arm-linux-gcc 3.4.3(注意:makefile中调用的交叉编译器默认为arm-linux-gcc,arm-linux-g++,所以请在编译前重命名海思的两个交叉编译工具,否则会提示找不到交叉编译器)注意:首先确保交叉编译器已加入路径PATH,如果没有加入,执行export PATH=$PATH:/opt/hisi...

weixin_39517199的博客 369

qt搭建linux开发环境,LINUX下QT FOR ARM开发环境搭建过程

在PC上,我们需要得到两个版本的Qt,分别是:Qt-4.5.2和QtEmbedded-4.5.2-arm。前者包括了QtDesigner等基本工具,用于在PC上对程序的开发调试,使我们能确保程序放到板子上之前就符合设计的要求;然后我们用后者的库将调试好的程序编译成能在arm-linux平台上运行的程序。Qt-4.5.2我们用从网上下载到的qt-x11-opensource-src-4.5.2.t...

weixin_32487557的博客 545

安装qt-x11-opensource-src-4.5.3和qt-embedded-linux-opensource-src-4.5.3步骤

源码下载地址:http://download.qt-project.org/archive/ 1.安装qt-x11-opensource-src-4.5.3 a.解压qt-x11-opensource-src-4.5.3.tar.gz xiarong@xiarong-pc:~$ tar -xvzf qt-x11-opensource-src-4.5.3.tar.gz   b.进入解压

xiarong715的专栏 4091
上一篇: ubuntu 10.4下安装交叉编译工具链
下一篇: 移植QT4.5 Segmentation Fault报错解决方法和字体偏小的办法
辉捺天韵
博客等级 码龄15年 2粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值