历史上的今天
今天是:2024年12月21日(星期六)
2020年12月21日 | TQ210开发板安装QT交叉编译环境安装总结
2020-12-21 来源:eefocus
系统环境:Ubuntu 12.04 64bit
开发平台:TQ 210开发板
一、总体流程:
二、Ubuntu12.04下安装tslib 1.4 出现各种问题汇总:
出现./autogen.sh: 4: ./autogen.sh: autoreconf: not found的错误解决
我看教程说的是直接执行命令 ./autogen.sh就可以了,后来我执行出错: ./autogen.sh: 4: ./autogen.sh: autoreconf: not found
上网查了查说是我的版本没有安装automake工具。解决方法如下
sudo apt-get install autoconfautomakelibtool 这时候再次执行./autogen.sh就不出错了
在执行make的时候出现: 在函数‘open’中
内联自‘main’于 ts_calibrate.c:227:11:
/usr/include/i386-linux-gnu/bits/fcntl2.h:51:24: 错误:调用‘__open_missing_mode’,声明有错误属性:open with O_CREAT in second argument needs 3 arguments 在函数‘open’中,
内联自‘main’于 ts_calibrate.c:229:11:
/usr/include/i386-linux-gnu/bits/fcntl2.h:51:24: 错误:调用‘__open_missing_mode’,声明有错误属性:open with O_CREAT in second argument needs 3 arguments 去 tests目录下打开ts_calibrate.c,修改 227和229行
解决方法:
gcc新版本编译器对语法检查严格,在源文件 ./tests/ts_calibrate.c中
// 源文件
// if ((calfile = getenv("TSLIB_CALIBFILE")) != NULL) { // cal_fd = open (calfile, O_CREAT | O_RDWR); // } else {
// cal_fd = open ("/etc/pointercal", O_CREAT | O_RDWR); // }
// 需要更改成如下形式
if ((calfile = getenv("TSLIB_CALIBFILE")) != NULL) { cal_fd = open (calfile, O_CREAT | O_RDWR, 0777); } else {
cal_fd = open ("/etc/pointercal", O_CREAT | O_RDWR, 0777); }
保存后重新编译即可
三、Arm-linux-gcc交叉编译器安装详解:
1、天嵌入提供的4.4.6交叉编译器的位置;
2、解压该安装包:sudo tar -xjvf ~~~~~~~~~ -C /
3、他会解压到:/opt/EmbedSky/4.4.6路径下,可以看到里面有个bin
4、添加环境变量: vi /etc/profile 在最后添加:export PATH=$PATH:/opt/EmbedSky/4.4.6/bin wq保存退出后 source /etc/profile 然后重启电脑
5、输入arm-linux-gcc -v可能会提示如下错误:
遇到这种情况请先检查自己的路径有没有出错,如果确定没有;如果Ubuntu系统是64位,那么很可能就是如下的原因:
安装完这个之后再输入arm-linux-gcc -v应该就没有问题了。 至此,交叉编译器安装完成。
四、编译qt-4.5 for arm:
在你arm-linux-gcc配置好之后,做到这里,我们就可以开始编译qt-4.5 for arm了! 1,解压qt-4.5源码包:sudo tar xjvf qt-4.5_for_TQ210_V1.0.tar.bz2 -C /
2、解压好了之后,我们就会在/opt/EmbedSky/qt-4.5里面发现一下各个文件
第一个是源码包,第二个是天嵌编译好的arm开发板上qt-4.5的脚本文件,第三个可以不用管,(如果需要你可以去pdf中查看下),本来编译arm上的qt-4.5正常的做法是进源码包,然后控制执行./configure 的参数的,但是这里既然有官方脚本,那我们就不自己输了。
3、执行脚本sudo ./arm_qt4.5_build,我们很可能会遇到这个问题。 The tslib functionality test failed! You might need to modify the include and library search paths by editing QMAKE_INCDIR and QMAKE_LIBDIR in /opt/EmbedSky/qt-4.5/qt-embedded-linux-opensource-src- 4.5.0/mkspecs/qws/linux-arm-g++. Build Qt4.5 library now, please wait ... gmake: *** 没有指明目标并且找不到makefile。停止。 Install Qt4.5 library now, please wait ... gmake: *** 没有规则可以创建目标“install”。停止。
这个时候我们首先输入arm-linux-gcc -v查看自己交叉编译器是否正常,确定正常后再执行脚本如果还是发现这个错误。这个时候需要做的是 先转化为root用户:su – root 然后再执行脚本:./arm_qt4.5_build
虽然不知道是为什么,但是这样的确是可以了。
五、配置Ubuntu下QT-4.5的环境:
正常情况下,我们的系统已经装好了PC上的Qt版本,譬如我这里装好了qt-4.8.5,我们要装用于开发板的qt-4.5,应该在装完上一步之后进行Qtcreater进行配置,但是我们的这里Qtcreater版本好像是太高的原因,添加qt-4.5的qmake路径时候老是会出错,所以我的做法是修改环境为qt-4.5,然后通过纯代码来编译,现在打开终端输入which qmake,可以看到qmake的信息是我们原先装的qt-4.8.5。接下来我们来添加qt-4.5的环境变量:
修改/etc/profile:sudo vi /etc/profile 在最后我们添加如下内容:
具体路径要根据自己的实际情况而定, 然后老规矩:source /etc/profile
这个时候再查看:whichqmake
OK!可以了,不过这里需要指出的这样配置的qmake只适用于当前的终端窗口,你一但关闭这个终端窗口或者重启,qmake又会变成了4.8.5。所以呢,每次需要qt-4.5编译之前都需要source /etc/profile一下。
史海拾趣
|
MAX686是一种具有数/模控制功能的新颖DC-DC转换器,它具有转换精度高、体积小、集成度高、功耗小、效率高等特点。因此,在数按电源和单片机应用电路中获得广泛应用。… 查看全部问答> |
|
1. 发现问题 最近做项目时发现,随着微型计算机技术的飞速发展,原来与之通信的串口已经消失。这对于用惯了RS232串口通信的人来说,措手不及。急需改进技术,USB接口将是最好替代接口。 2. 分析问题 就目前来说,U ...… 查看全部问答> |
|
折腾了两天,NND 昨天搞得太晚,没有写文档,呵呵,先上传几张图片吧 加速传感器的型号为LIS3LV02DL,ST公司的,上个全身照 下面来看看我的焊的“八爪鱼”,手机拍的不是很清楚,哈哈 ...… 查看全部问答> |
|
现在市场上出现了几款带遥控器的电脑,用户通过遥控器就能对电脑进行操作,如播放VCD、欣赏图片、看电视等,非常方便。能不能在一般普通用户的组装机上实现这一功能呢?经过笔者的研究,收获还真不少,方案综合起来有以下几类: 1.专用的红外遥 ...… 查看全部问答> |
|
现在的声卡驱动程序一般都在控制面板中有一个链接直接进去可以去设置声卡,设置的选项比如有: 模拟输出设置,S/PDIF输出设置,DSP模式设置 混音器设置 效果设置等等。 我现在查到的资料是,模拟输出的设备可以在注册表中设置,各声道的音量可以用 ...… 查看全部问答> |
|
小弟在参考《windowsce 程序设计》一书, 想练习做一个日程表的小程序,每当选一个日子,就在一个edit控件上显示一些文字, 并能够根据搜索条件在日历上高亮标出多个日子。 但是没看了半天书,没懂, 请教如何使用这个控件, 怎么获取选中的日 ...… 查看全部问答> |
|
請問版上有人有用過arm7 s3c44b0x i2c周邊的經驗嗎? 最近在測試這顆arm的i2c介面 奇怪的是 sda腳有波形產生,但scl卻沒有震盪,示波器上看一直保持在高電位 不知道這樣是什麼情形? 會是硬體本身有問題嗎? 想不出個所以然來,請大家幫忙, ...… 查看全部问答> |
|
wince 5 build过程中能否区分当前设置的locale? 我想根据当前wince 设置的locale来修改一个registry的设置,比如,如果当前build的为chinese, 则desktop的背景为中文图片,如果build的为english版本,则设置为英文图片,这个需要修改platform.reg 能否在这个reg中通过IFDEF的设置来得到当前bui ...… 查看全部问答> |




