您尚未登录。

楼主 #1 2019-04-12 11:19:16

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

用QT去操作V3S   是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

离线

楼主 #3 2019-04-12 11:24:24

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

晕哥 说:

生成二进制文件,在目标机器跑就可以了。

不明白你的意思

详细描述一下

我现在是QT下面make了 生成了二进制文件 饭后直接放到V3S上面去跑
123_20190412-1123.png

离线

楼主 #4 2019-04-12 11:31:43

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

就是我现在用QT就创建了一个UI  我make了也生成了二进制文件,然后直接放到V3S里面去跑发现跑不起来

离线

楼主 #6 2019-04-12 11:40:31

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

晕哥 说:

这操作不对,你得用 arm gcc 工具链生成的Qt程序才行,看上面log你肯定是用 本机x86 工具生成的



https://whycan.cn/t_2169.html

可以先按照这个帖子做

我从那个帖子中没有看到关于QT操作的   
我现在编译了我改了
CC            = arm-linux-gnueabihf-gcc -lts
CXX           = arm-linux-gnueabihf-g++ -lts

离线

楼主 #9 2019-04-12 14:04:10

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

我现在用qmake  了 也出现了Makefile
在MakeFIle里面修改了这两处就编译不通过 以前的是gcc  和g++
CC            = arm-linux-gnueabihf-gcc -lts
CXX           = arm-linux-gnueabihf-g++ -lts


出现的错误是
root@ubuntu:/home/share/KADIBCM_GUI/KADIBCM_GUI/KADIBCM_GUI# make
g++ -Wl,-O1 -Wl,-rpath,/opt/Qt5.4.1/5.4/gcc_64 -Wl,-rpath,/opt/Qt5.4.1/5.4/gcc_64/lib -o KADIBCM_GUI tmp/obj/main.o tmp/obj/mainwindow.o tmp/obj/moc_mainwindow.o   -L/home/share/opt/Qt5.4.1/5.4/gcc_64/lib -lQt5Widgets -L/opt/Qt5.4.1/5.4/gcc_64/lib -lQt5Gui -lQt5Core -lGL -lpthread
/usr/bin/ld: tmp/obj/main.o: Relocations in generic ELF (EM: 40)
/usr/bin/ld: tmp/obj/main.o: Relocations in generic ELF (EM: 40)
/usr/bin/ld: tmp/obj/main.o: Relocations in generic ELF (EM: 40)
tmp/obj/main.o: error adding symbols: File in wrong format
collect2: error: ld returned 1 exit status
Makefile:205: recipe for target 'KADIBCM_GUI' failed
make: *** [KADIBCM_GUI] Error 1

离线

楼主 #11 2019-04-12 14:17:31

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

晕哥 说:

你的 qmake 可执行程序的全路径是什么,我看看有没有错

我不该Makefile里面的 CC 和CXX的时候就不会有错
1_20190412-1416.png

离线

楼主 #12 2019-04-12 14:20:45

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

CC            = gcc
CXX           = g++
如果生成的Makefile这两个参数是这样的然后我就直接make就不会有错了
如果是该为CC            = arm-linux-gnueabihf-gcc -lts
CXX           = arm-linux-gnueabihf-g++ -lts 这样就报错

离线

楼主 #13 2019-04-12 14:31:23

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

现在是这样的情况了 刚才那个问题没有了
2_20190412-1430.png

离线

楼主 #15 2019-04-12 14:47:46

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

晕哥 说:

说明你生成的Qt工具链不正确,参考我前面给的链接。

现在就是编译那个tslib没有找到

离线

楼主 #17 2019-04-12 14:53:37

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

超级萌新 说:
无情一刀 说:
晕哥 说:

说明你生成的Qt工具链不正确,参考我前面给的链接。

现在就是编译那个tslib没有找到

buildroot 根目录打开 .config 文件,直接搜索 tslib,然后启用。

我没有用buildroot

离线

楼主 #19 2019-04-13 09:34:02

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

显示那个MakeFIla文件里面的编译环境是
CC            = arm-linux-gnueabihf-gcc -lts
CXX           = arm-linux-gnueabihf-g++ -lts  这个

但是外面去编译的总是提示file not recognized: File format not recognized这样库错误

离线

楼主 #21 2019-04-13 09:44:40

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

晕哥 说:
无情一刀 说:

显示那个MakeFIla文件里面的编译环境是
CC            = arm-linux-gnueabihf-gcc -lts
CXX           = arm-linux-gnueabihf-g++ -lts  这个

但是外面去编译的总是提示file not recognized: File format not recognized这样库错误

昨天远程帮你看过了,
就是你编译出来的 Qt 工具链有问题
https://blog.csdn.net/u011113596/article/details/80325081

你编译时候参数没设置好,
所以编译出来是 x86_amd64 的。


我现在的QT工具链有问题 那我现在是不是要重新安装QT 工具,

离线

楼主 #23 2019-04-13 09:51:59

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

晕哥 说:

重新编译仍然很麻烦, 用昨天那个 buildroot 里面的 qmake 就可以了。

对应的根文件系统也是用 buildroot-2018.08.2/output/target 这个目录的文件制作就可以了。


你说这个文件系统 我以后就是用制作文件系统的时候mkfs.jffs2 -s 0x100 -e 0x10000 -p 0xAF0000 -d rootfs/ -o jffs2.img
就将rootfs指向target这个目录就可以了是吧
我试了下 编译的出来的文件系统有37M左右 我们的内存没有这么大

最近编辑记录 无情一刀 (2019-04-13 10:00:20)

离线

楼主 #25 2019-04-13 11:21:14

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

对于下面三个库 不是很了解  他们作用是什么?
5_20190413-1120.png

离线

楼主 #27 2019-04-13 11:37:01

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

晕哥 说:

都是Qt的核心库,动态链接库。

你的 Flash 多大, 是 JFFS2 根文件系统吗? 根文件系统分配的flash空间多大?

是的 就是跟文件系统 主要是现在flash 总的只有16M

离线

楼主 #29 2019-04-13 12:01:24

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

晕哥 说:
无情一刀 说:
晕哥 说:

都是Qt的核心库,动态链接库。

你的 Flash 多大, 是 JFFS2 根文件系统吗? 根文件系统分配的flash空间多大?

是的 就是跟文件系统 主要是现在flash 总的只有16M

那装下 Qt 有点难度啊,
得了解一下 squashfs

https://whycan.cn/t_2179.html
https://whycan.cn/t_2170.html


如果上面还不行就得剪裁 Qt5了,
如果上面还不行就得剪裁 Qt4了.

就是因为内存太小了
你说的剪裁QT是什么意思啊   我用QT编译好了工程 直接放到V3S板子里面去 就可以显示了吧????
我现在就是想的就是用SDnand去启动用个128M,

离线

楼主 #31 2019-04-13 13:47:56

无情一刀
会员
注册时间: 2018-09-04
已发帖子: 695
积分: 686

Re: 用QT去操作V3S 是不是不要操作显示缓冲区 直接将编译后的工程放到V3S里面

晕哥 说:

sd nand 空间确实够大了。
剪裁就是通过配置去掉不需要的功能降低动态链接库大小。

其实用SD nand 我们是用那种小型的  直接焊接上去了,但是就会带来一个问题 如果我下次要更新程序程序怎么办??

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn