goodman

goodman

2个粉丝

30

问答

18

专栏

17

资料

goodman  发布于  2015-07-12 09:03:58
采纳率 0%
30个问答
wooshang@126.com
17054

QtCreator支持3520D工具链

 
本帖最后由 goodman 于 2015-7-14 21:07 编辑

本文描述了海思3520D平台下Qt开发的步骤,对于海思的其他平台也是通用的,请自己参考本教程适当修改即可。环境:
Fedora 22 + Qt 4.8.6 + Hi3520DSDKV1.0.2.2 + arm-hisiv100nptl-linux-gcc
不要问我问什么不用Ubuntu,因为我喜欢Fedora....
1.SDK安装
海思的SDK安装就不详细赘述了,SDK里面的readme_cn.txt已经写的很详细了,不会的就在论坛里面发帖问好了.注意交叉工具链选择arm-hisiv100nptl-linux-gcc,假设工具链的路径是
[quote]~/worspace/toolchain/arm-hisiv100-linux[/quote]
2.Qt的安装
首先下载我已经编译好的[url=http://pan.baidu.com/s/1kTiWuEV]Qt4.8.6下载[/url],关于版本之后做说明。解压到你自己的安装目录,并运行fixme.sh脚本,否则在下面出错。(workspace换成你自己的)
[code]cd ~/workspace/
tar -zxvf Qt4.8.6
cd ~/workspace/Qt4.8.6/bin
./fixme.sh[/code]
执行完上述命令后会在当前目录下生成一个qt.conf的文件,原因就不讲了,可以自行Google.
3.QtCreate的配置
打开QtCreate依次点开菜单栏里面的tools--->options选择到编译器那一栏按照下图配置好

再点到Qt Version按下图配置好

最后再选择Kits按如下配置就可以了

下面就是打开guitest工程了,guitest.pro就是QtCreator的工程,打开时候会让你选择使用哪个Kits作为开发如下图所示

4.编译运行
编译完成之后需要拷贝到板子上去运行,本地是运行不了,建议大家挂NFS,这样不但速度快而且还不会频繁的擦写flash,最后编译完大概就是这样子的

5.关于Qt的裁剪
Qt要想根据实际项目才能裁剪到8M左右(之前4.7版本),要想裁剪到这个地步是要牺牲很多特性及控件的,也就是仅仅支持一些简单的控件,通用版本的可以裁剪到11~12M,对于我们配合squashfs来使用完全可以满足需求的,也就是在16M的SPI-FLASH上使用,对于一般的开发来讲libQtCore.so.4.8.6 libQtNetwork.so.4.8.6 libQtGui.so.4.8.6这3个就足够了,目前使用的Qt配置如下,供大家参考:
[code]
./configure -prefix $HOME/workspace/target/arm-hisiv100-linux/usr/local/Qt4.8.6 \
-opensource \
-confirm-license\
-no-qt3support\
-no-phonon\
-no-phonon-backend\
-no-multimedia\
-no-gtkstyle\
-no-svg\
-no-webkit\
-no-javascript-jit\
-no-script\
-no-scripttools\
-no-declarative\
-no-declarative-debug\
-qt-gfx-linuxfb\
-qt-zlib\
-no-gif\
-qt-libtiff\
-qt-libpng -no-libmng -qt-libjpeg\
-no-rpath -no-pch\
-no-3dnow   -no-avx  -no-neon\
-no-openssl\
-no-nis\
-no-cups\
-no-dbus\
-embedded arm\
-xplatform qws/linux-3520d-g++\
-little-endian\
-qt-freetype\
-no-opengl\
-no-glib\
-nomake demos\
-nomake examples\
-nomake docs
[/code]
结束

PS:以后尽量写文字,论坛的编辑器太难用了,我用markdown写好的格式往里面一粘贴全没了。。
我来回答
回答48个
时间排序
认可量排序

ymir

1个粉丝

23

问答

0

专栏

8

资料

ymir 2015-07-12 17:03:40
认可0
等到了,今晚测试一下、

ymir

1个粉丝

23

问答

0

专栏

8

资料

ymir 2015-07-12 17:54:31
认可0
这样编译出来的共享库还是很大呢!
[code][root@localhost:2 lib]# ll -Sh
total 16M
-rwxr-xr-x. 1 root root  11M May 18 07:28 libQtGui.so.4.8.6
-rwxr-xr-x. 1 root root 3.4M May 18 07:27 libQtCore.so.4.8.6
-rwxr-xr-x. 1 root root 1.1M May 18 07:28 libQtNetwork.so.4.8.6
-rwxr-xr-x. 1 root root 262K May 18 07:28 libQtXml.so.4.8.6
-rwxr-xr-x. 1 root root 226K May 18 07:28 libQtSql.so.4.8.6
-rwxr-xr-x. 1 root root 134K May 18 07:28 libQtTest.so.4.8.6
drwxr-xr-x. 2 root root 4.0K May 18 07:28 fonts
drwxr-xr-x. 2 root root 4.0K May 18 07:28 pkgconfig
-rw-r--r--. 1 root root  719 May 18 07:28 libQtGui.prl
-rw-r--r--. 1 root root  717 May 18 07:28 libQtNetwork.la
-rw-r--r--. 1 root root  710 May 18 07:28 libQtNetwork.prl
-rw-r--r--. 1 root root  707 May 18 07:28 libQtTest.prl
-rw-r--r--. 1 root root  701 May 18 07:28 libQtGui.la
-rw-r--r--. 1 root root  699 May 18 07:28 libQtSql.prl
-rw-r--r--. 1 root root  698 May 18 07:28 libQtXml.prl
-rw-r--r--. 1 root root  696 May 18 07:28 libQtTest.la
-rw-r--r--. 1 root root  689 May 18 07:28 libQtSql.la
-rw-r--r--. 1 root root  689 May 18 07:28 libQtXml.la
-rw-r--r--. 1 root root  682 May 18 07:27 libQtCore.prl
-rw-r--r--. 1 root root  670 May 18 07:27 libQtCore.la
lrwxrwxrwx. 1 root root   21 May 18 07:28 libQtNetwork.so -> libQtNetwork.so.4.8.6
lrwxrwxrwx. 1 root root   21 May 18 07:28 libQtNetwork.so.4 -> libQtNetwork.so.4.8.6
lrwxrwxrwx. 1 root root   21 May 18 07:28 libQtNetwork.so.4.8 -> libQtNetwork.so.4.8.6
lrwxrwxrwx. 1 root root   18 May 18 07:27 libQtCore.so -> libQtCore.so.4.8.6
lrwxrwxrwx. 1 root root   18 May 18 07:27 libQtCore.so.4 -> libQtCore.so.4.8.6
lrwxrwxrwx. 1 root root   18 May 18 07:27 libQtCore.so.4.8 -> libQtCore.so.4.8.6
lrwxrwxrwx. 1 root root   18 May 18 07:28 libQtTest.so -> libQtTest.so.4.8.6
lrwxrwxrwx. 1 root root   18 May 18 07:28 libQtTest.so.4 -> libQtTest.so.4.8.6
lrwxrwxrwx. 1 root root   18 May 18 07:28 libQtTest.so.4.8 -> libQtTest.so.4.8.6
lrwxrwxrwx. 1 root root   17 May 18 07:28 libQtGui.so -> libQtGui.so.4.8.6
lrwxrwxrwx. 1 root root   17 May 18 07:28 libQtGui.so.4 -> libQtGui.so.4.8.6
lrwxrwxrwx. 1 root root   17 May 18 07:28 libQtGui.so.4.8 -> libQtGui.so.4.8.6
lrwxrwxrwx. 1 root root   17 May 18 07:28 libQtSql.so -> libQtSql.so.4.8.6
lrwxrwxrwx. 1 root root   17 May 18 07:28 libQtSql.so.4 -> libQtSql.so.4.8.6
lrwxrwxrwx. 1 root root   17 May 18 07:28 libQtSql.so.4.8 -> libQtSql.so.4.8.6
lrwxrwxrwx. 1 root root   17 May 18 07:28 libQtXml.so -> libQtXml.so.4.8.6
lrwxrwxrwx. 1 root root   17 May 18 07:28 libQtXml.so.4 -> libQtXml.so.4.8.6
lrwxrwxrwx. 1 root root   17 May 18 07:28 libQtXml.so.4.8 -> libQtXml.so.4.8.6
[root@localhost:2 lib]# [/code]

jp1017

0个粉丝

78

问答

0

专栏

9

资料

jp1017 2015-07-13 08:18:13
认可0
ubuntu15.04用户路过,帮顶下
有时间玩玩,现在搞java中

jp1017

0个粉丝

78

问答

0

专栏

9

资料

jp1017 2015-07-13 08:44:34
认可0
本帖最后由 jp1017 于 2015-7-13 08:46 编辑

提示qt没有被正确安装,请运行make install,在哪里运行呢没有makefile???





goodman

2个粉丝

30

问答

18

专栏

17

资料

goodman 2015-07-13 21:13:42
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=18009&ptid=8086]jp1017 发表于 2015-7-13 08:44[/url]
提示qt没有被正确安装,请运行make install,在哪里运行呢没有makefile???[/quote]

把你的qt.conf发出来我看看

jp1017

0个粉丝

78

问答

0

专栏

9

资料

jp1017 2015-07-14 08:09:27
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=18046&ptid=8086]goodman 发表于 2015-7-13 21:13[/url]
把你的qt.conf发出来我看看[/quote]

这个就是qt.conf文件内容了



goodman

2个粉丝

30

问答

18

专栏

17

资料

goodman 2015-07-14 20:55:21
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=18050&ptid=8086]jp1017 发表于 2015-7-14 08:09[/url]
这个就是qt.conf文件内容了[/quote]

我测试过了,是我的脚本写的有问题。。
把路径的bin去掉就可以了。。
附上修正后的脚本
[code]#!/bin/bash
# @File fixpath.sh
# @Athor WooShang  wooshang@126.com

PREFIX=$(dirname ${PWD})
echo "[Paths]" > qt.conf
echo "Prefix = ${PREFIX}">> qt.conf[/code]

感谢测试。。。:lol

jp1017

0个粉丝

78

问答

0

专栏

9

资料

jp1017 2015-07-15 08:35:41
认可0
本帖最后由 jp1017 于 2015-7-15 08:36 编辑

[quote][url=forum.php?mod=redirect&goto=findpost&pid=18094&ptid=8086]goodman 发表于 2015-7-14 20:55[/url]
我测试过了,是我的脚本写的有问题。。
把路径的bin去掉就可以了。。
附上修正后的脚本
[/quote]

修改后编译成功,生成了gui_test可执行程序
挂载nfs,运行./gui_test,提示:./gui_test: can't load library 'libmpi.so'
这个库要放到板子里吗,什么位置,怎么连接的,乱的很



yang0621

0个粉丝

5

问答

0

专栏

0

资料

yang0621 2015-07-22 09:04:14
认可0
通过nfs挂载  这么设置环境 让程序连接动态库

myearth

0个粉丝

3

问答

0

专栏

3

资料

myearth 2015-08-17 15:47:06
认可0
# ./gui_test -qws
QFontDatabase: Cannot find font directory /home/lwx/workspace/target/arm-hisiv100-linux/usr/local/Qt4.8.6/lib/fonts - is Qt installed correctly?
这是什么情况,怎么找不到那里改!?谢谢

myearth

0个粉丝

3

问答

0

专栏

3

资料

myearth 2015-08-17 17:28:13
认可0
export QT_QWS_FONTDIR=/mnt/usr/lib/fonts

执行下路径就好,自己搞定了

goodman

2个粉丝

30

问答

18

专栏

17

资料

goodman 2015-08-17 19:18:35
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=19366&ptid=8086]myearth 发表于 2015-8-17 17:28[/url]
export QT_QWS_FONTDIR=/mnt/usr/lib/fonts

执行下路径就好,自己搞定了[/quote]

非常好,解决了还来分享,论坛需要你

myearth

0个粉丝

3

问答

0

专栏

3

资料

myearth 2015-08-17 20:35:46
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=19371&ptid=8086]goodman 发表于 2015-8-17 19:18[/url]
非常好,解决了还来分享,论坛需要你[/quote]

您提供的资料,最少让我少干2周,非常感谢!

zhitao2072

0个粉丝

0

问答

0

专栏

0

资料

zhitao2072 2015-08-21 17:58:06
认可0
我想问一下,你第三步的界面是在哪里面的?,我的Ubuntu上的QT creator怎么没有这个界面

xsjqqq123

0个粉丝

9

问答

0

专栏

0

资料

xsjqqq123 2015-09-21 22:27:30
认可0
我在你贴出的参数后加 -qconfig  想进一裁减,但怎样都出错,请问需要注意些什么?

wonsea

0个粉丝

4

问答

0

专栏

0

资料

wonsea 2015-12-09 15:49:45
认可0
本帖最后由 wonsea 于 2015-12-9 15:55 编辑

大哥,我解你那个包会失败:tar: skipping to next header;包有问题么
还有一个纳闷的问题,你们的鼠标事件是从哪里来的(板子上不是没有鼠标接口么),我现在是SOCKET收的另外一台机器的鼠标事件;

Friendz

0个粉丝

3

问答

0

专栏

0

资料

Friendz 2016-05-28 15:13:25
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=23202&ptid=8086]wonsea 发表于 2015-12-9 15:49[/url]
大哥,我解你那个包会失败:tar: skipping to next header;包有问题么
还有一个纳闷的问题,你们的鼠标事 ...[/quote]

USB 鼠标可否用?

fb362203

0个粉丝

24

问答

0

专栏

0

资料

fb362203 2016-05-29 17:20:57
认可0
具有相当高的指导意义啊

willzhang121

0个粉丝

8

问答

0

专栏

0

资料

willzhang121 2016-05-31 09:00:36
认可0
感谢大神分享

艾编程的鲁小班

18个粉丝

25

问答

17

专栏

32

资料

艾编程的鲁小班 2016-07-05 16:34:27
认可0
感谢大神分享,问一个小白级的问题,qt库的裁剪是不是先写好qt程序之后再去裁。。。
加载中···
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
相关问答
无更多相似问答 去提问
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区