嵌入式爱好者

查看: 7620|回复: 18

用S5PV210光盘资料编译qt4.7.1环境,经验小结

[复制链接]

1

主题

4

帖子

8

积分

扫一扫,手机访问本帖
发表于 2014-2-27 16:59:51 | 显示全部楼层 |阅读模式
本帖最后由 府相朝垣 于 2014-3-3 10:09 编辑

根据“Ubuntu下Qt4.7.1编译环境配置说明.pdf”编译,碰到了很多麻烦。各步骤说明如下:
前几步没问题。
1.4步产生configure文件,用gedit打开,屏蔽第15896和第15948行,可去除tslib编译中的undefined reference to `rpl_malloc'这一error。
QQ截图20140227165456.jpg   
1.5步,echo "ac_cv_func_malloc_0 _nonnull=yes">arm-linux.cache这一句无效,对后面的错误不起作用,不必输入。
直接从./configure开始输:
# ./configure --host=arm-linux --cache-file=arm-linux.cache  --enable-inputapi=no  PLUGIN_DIR=/usr/local/arm/tslib/plugins
-prefix=/usr/local/arm/tslib 2>&1 | tee conf_log (注意参数用空格,不要跟pdf中那样换行,pdf中还有重复)这一步产生config.h。
修改tests下的ts_calibrate.c文件:
QQ截图20140227165657.jpg
,加入这两个参数,可去除“/usr/include/bits/fcntl2.h:51: error: call to ‘__open_missing_mode’ declared with attribute error: open with O_CREAT in second argument needs 3 arguments”这一错误。
1.6步make 2>& | tee make_log  “&”后面少了“1”,应该是make 2>&1 | tee make_log
一直到最后编译完tslib。
成功编译完tslib后,应该是:
QQ截图20140227165840.jpg
,bin、include、lib自动全部生成,无需拷贝。
成功编译了tslib,下面编译qt4.5就不会提示
        “ The tslib functionality test failed!
              You might need to modify the include and library search paths by editing
              QMAKE_INCDIR and QMAKE_LIBDIR in
              /home/liuqiqi/source/qt/qt-everywhere-opensource-src-4.7.2/mkspecs/qws/linux-arm-g++
这个错误,否则按网上写的修改qt配置文件的办法均无效。修改后,一运行build-all所有配置恢复原状。只有成功编译完tslib,后面才一路畅通。
按教程编译qt4.5最后显示:
/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/lib/libQtGui.so: undefined reference to `ts_open'
/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/lib/libQtGui.so: undefined reference to `ts_fd'
/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/lib/libQtGui.so: undefined reference to `ts_config'
/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/lib/libQtGui.so: undefined reference to `ts_close'
/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/lib/libQtGui.so: undefined reference to `ts_read'
collect2: ld returned 1 exit status
make[3]: *** [blockingfortuneclient] Error 1
后面的错误都是这五个/lib/libQtGui.so: undefined reference导致的,我没按教程来,而是用的网上的方法:
把/usr/local/arm/tslib下的相关库
libts-0.0.so.0  libts-0.0.so.0.1.0 libts.so
拷到编译器库里面/usr/local/arm/arm-2009q3/arm-none-linux-gnueabi/libc/lib,make distclean后,再次./build_all,
最后显示一大串:
cp -f -r /qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm50pocket-msvc2008 /opt/qt-4.7.1/mkspecs/
cp -f -r /qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm50smart-msvc2005 /opt/qt-4.7.1/mkspecs/
cp -f -r /qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm50smart-msvc2008 /opt/qt-4.7.1/mkspecs/
cp -f -r /qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm60professional-msvc2005 /opt/qt-4.7.1/mkspecs/
cp -f -r /qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm60professional-msvc2008 /opt/qt-4.7.1/mkspecs/
cp -f -r
没再提示错误,应该是完整编译完了。



补充:上次要写的点太多,把下面的漏了,抱歉。
这是qt文件包里的build_all文件。图片是修改后的,飞凌自带的文件红线标出处有错误,需要先修改一下,不然路径错误,通不过。
QQ截图20140303100128.jpg

回复

使用道具 举报

6

主题

44

帖子

87

积分

发表于 2014-2-27 17:33:56 | 显示全部楼层
谢谢 分享.。。。
点评回复 支持 反对

使用道具 举报

153

主题

3910

帖子

4207

积分

AM5718通行证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FCU1401通行证FCU1301通行证FCU11xx通行证

发表于 2014-2-28 08:42:13 | 显示全部楼层
感谢楼主的分享,赞一个
技术支持电话:0312-3119192
技术支持邮箱:Linux@forlinx.com
点评回复 支持 反对

使用道具 举报

6

主题

44

帖子

87

积分

发表于 2014-2-28 10:56:08 | 显示全部楼层
我的已经自动生成 那几个文件了,但是后面还是出错呢?

qt16.png
make-install.png

点评

第二张图,后面有“tslib functionality test failed” 说明还是tslib的test部分没编译通过。你再看1.6:make: *** No rule to make target `../src/libts.la', needed by `ts_test'. Stop.显然是tests这部分不行  发表于 2014-3-3 09:49
点评回复 支持 反对

使用道具 举报

6

主题

44

帖子

87

积分

发表于 2014-2-28 16:18:28 | 显示全部楼层
1.5用 configure 生成 Makefile
生成警告
configure: WARNING: unrecognized options: --enable-inputapi
root@localhost:~/arm/tslib#


1.6 编译安装
make 2>&1 | tee make_log
错误:
font_8x16.c:4629: warning: pointer targets in initialization differ in signedness
mv -f .deps/font_8x16.Tpo .deps/font_8x16.Po
make: *** No rule to make target `../src/libts.la', needed by `ts_test'.  Stop.
root@localhost:~/arm/tslib/tests#



root@localhost:/usr/local/arm/tslib# ls
bin  build  etc  include  lib  
多一个build


点评

不知道您的问题解决了吗?  详情 回复 发表于 2014-3-3 08:47
点评回复 支持 反对

使用道具 举报

153

主题

3910

帖子

4207

积分

AM5718通行证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FCU1401通行证FCU1301通行证FCU11xx通行证

发表于 2014-3-3 08:47:30 | 显示全部楼层
sunday151840 发表于 2014-2-28 16:18
1.5用 configure 生成 Makefile
生成警告
configure: WARNING: unrecognized options: --enable-inputapi ...

不知道您的问题解决了吗?

点评

还没有,按照楼主的方法还是不行,自己也不能向楼主那么厉害去分析。 今天还要继续弄  详情 回复 发表于 2014-3-3 09:08
技术支持电话:0312-3119192
技术支持邮箱:Linux@forlinx.com
点评回复 支持 反对

使用道具 举报

6

主题

44

帖子

87

积分

发表于 2014-3-3 09:08:26 | 显示全部楼层
飞凌-unix 发表于 2014-3-3 08:47
不知道您的问题解决了吗?

还没有,按照楼主的方法还是不行,自己也不能向楼主那么厉害去分析。 今天还要继续弄

点评

看一下build_all文件的路径都对吗,飞凌的有好几处错误。  详情 回复 发表于 2014-3-3 10:10
点评回复 支持 反对

使用道具 举报

1

主题

4

帖子

8

积分

 楼主| 发表于 2014-3-3 10:10:45 | 显示全部楼层
sunday151840 发表于 2014-3-3 09:08
还没有,按照楼主的方法还是不行,自己也不能向楼主那么厉害去分析。 今天还要继续弄

看一下build_all文件的路径都对吗,飞凌的有好几处错误。

点评

我基本上都是按照你写的修改步骤做的,tests 下面的ts_calibrate.c 也修改了。。还有就是,楼主指的build_all文件是tslib里面的还是QT里面的?我没有在tslib里面发现这个文件。  详情 回复 发表于 2014-3-3 15:01
点评回复 支持 反对

使用道具 举报

6

主题

44

帖子

87

积分

发表于 2014-3-3 15:01:08 | 显示全部楼层
府相朝垣 发表于 2014-3-3 10:10
看一下build_all文件的路径都对吗,飞凌的有好几处错误。

我基本上都是按照你写的修改步骤做的,tests 下面的ts_calibrate.c 也修改了。。还有就是,楼主指的build_all文件是tslib里面的还是QT里面的?我没有在tslib里面发现这个文件。

点评

qt-embed。。。。。文件夹里的  详情 回复 发表于 2014-3-4 22:27
点评回复 支持 反对

使用道具 举报

153

主题

3910

帖子

4207

积分

AM5718通行证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FCU1401通行证FCU1301通行证FCU11xx通行证

发表于 2014-3-4 08:51:04 | 显示全部楼层
建议楼主再写的详细一些
技术支持电话:0312-3119192
技术支持邮箱:Linux@forlinx.com
点评回复 支持 反对

使用道具 举报

6

主题

44

帖子

87

积分

发表于 2014-3-4 14:12:58 | 显示全部楼层
urce-src-4.7.1/mkspecs/wince60standard-x86-msvc2005 /opt/qt-4.7.1/mkspecs/
cp -f -r /home/huang/arm/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm50pocket-msvc2005 /opt/qt-4.7.1/mkspecs/
cp -f -r /home/huang/arm/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm50pocket-msvc2008 /opt/qt-4.7.1/mkspecs/
cp -f -r /home/huang/arm/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm50smart-msvc2005 /opt/qt-4.7.1/mkspecs/
cp -f -r /home/huang/arm/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm50smart-msvc2008 /opt/qt-4.7.1/mkspecs/
cp -f -r /home/huang/arm/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm60professional-msvc2005 /opt/qt-4.7.1/mkspecs/
cp -f -r /home/huang/arm/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm60professional-msvc2008 /opt/qt-4.7.1/mkspecs/
cp -f -r /home/huang/arm/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm60standard-msvc2005 /opt/qt-4.7.1/mkspecs/
cp -f -r /home/huang/arm/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm60standard-msvc2008 /opt/qt-4.7.1/mkspecs/
cp -f -r /home/huang/arm/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm65professional-msvc2005 /opt/qt-4.7.1/mkspecs/
cp -f -r /home/huang/arm/qt-everywhere-opensource-src-4.7.1/qt-everywhere-opensource-src-4.7.1/mkspecs/wincewm65professional-msvc2008 /opt/qt-4.7.1/mkspecs/


非常感谢。。终于好了。 。

点评

恭喜恭喜,不知您的问题是出在什么地方啊?  详情 回复 发表于 2014-3-4 16:42
点评回复 支持 反对

使用道具 举报

153

主题

3910

帖子

4207

积分

AM5718通行证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FCU1401通行证FCU1301通行证FCU11xx通行证

发表于 2014-3-4 16:42:03 | 显示全部楼层
sunday151840 发表于 2014-3-4 14:12
urce-src-4.7.1/mkspecs/wince60standard-x86-msvc2005 /opt/qt-4.7.1/mkspecs/
cp -f -r /home/huang/arm ...

恭喜恭喜,不知您的问题是出在什么地方啊?

点评

按照楼主提供的修改后教程做的,修改了build-all。建议官方文档做相应修改。也可以对楼主做出奖励,不然我觉得我根本没有能力配置成功  详情 回复 发表于 2014-3-4 16:48
技术支持电话:0312-3119192
技术支持邮箱:Linux@forlinx.com
点评回复 支持 反对

使用道具 举报

6

主题

44

帖子

87

积分

发表于 2014-3-4 16:48:17 | 显示全部楼层
飞凌-unix 发表于 2014-3-4 16:42
恭喜恭喜,不知您的问题是出在什么地方啊?

按照楼主提供的修改后教程做的,修改了build-all。建议官方文档做相应修改。也可以对楼主做出奖励,不然我觉得我根本没有能力配置成功
点评回复 支持 反对

使用道具 举报

1

主题

4

帖子

8

积分

 楼主| 发表于 2014-3-4 22:27:12 | 显示全部楼层
sunday151840 发表于 2014-3-3 15:01
我基本上都是按照你写的修改步骤做的,tests 下面的ts_calibrate.c 也修改了。。还有就是,楼主指的build ...

qt-embed。。。。。文件夹里的
点评回复 支持 反对

使用道具 举报

153

主题

3910

帖子

4207

积分

AM5718通行证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FCU1401通行证FCU1301通行证FCU11xx通行证

发表于 2014-3-5 08:37:11 | 显示全部楼层
大家解决就好,我们会参考您的意见的
技术支持电话:0312-3119192
技术支持邮箱:Linux@forlinx.com
点评回复 支持 反对

使用道具 举报

3

主题

9

帖子

23

积分

发表于 2014-3-11 22:41:51 | 显示全部楼层
楼主大神,多谢你的分享,我似乎也成功编译了。。楼主好人
点评回复 支持 反对

使用道具 举报

Heidi 该用户已被删除
发表于 2014-3-15 19:01:51 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
点评回复 支持 反对

使用道具 举报

Heidi 该用户已被删除
发表于 2014-3-15 19:02:44 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
点评回复 支持 反对

使用道具 举报

153

主题

3910

帖子

4207

积分

AM5718通行证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FCU1401通行证FCU1301通行证FCU11xx通行证

发表于 2014-3-17 09:08:05 | 显示全部楼层
Heidi 发表于 2014-3-15 19:02
请问下 “把/usr/local/arm/tslib下的相关库
libts-0.0.so.0  libts-0.0.so.0.1.0 libts.so
拷到编译器库 ...

您找不到这些库文件?那您把库文件拷贝到/usr/local/arm/arm-2009q3/lib 目录下呢?
技术支持电话:0312-3119192
技术支持邮箱:Linux@forlinx.com
点评回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-12-21 18:57

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表