jsxyhyj

jsxyhyj

0个粉丝

3

问答

0

专栏

1

资料

jsxyhyj  发布于  2016-09-02 15:02:12
采纳率 0%
3个问答
10115

qt5.6在3531板子上没有反应。

 
我交叉编译的是qt5.6.1  ,
板子的环境变量如下。
# export
export HOME='/root'
export LD_LIBRARY_PATH='/usr/local/lib:/usr/lib:/opt/Qt-5.6.1/hisiv100nptl/lib'
export LOGNAME='root'
export OLDPWD='/opt/Qt-5.6.1/hisiv100nptl/plugins/platforms'
export PATH='/usr/bin:/usr/sbin:/bin:/sbin'
export PWD='/opt/Qt-5.6.1/hisiv100nptl'
export QT_QPA_FONTDIR='/opt/Qt-5.6.1/hisiv100nptl/lib/fonts'
export QT_QPA_PLATFORM='linuxfb:/dev/fb0'
export QT_QPA_PLATFORM_PLUGIN_PATH='/opt/Qt-5.6.1/hisiv100nptl/plugins'
export SHELL='/bin/sh'
export TERM='vt102'
export USER='root'


我在ubuntu下的qt creator里交叉编译后,放到3531的板子上运行。什么反应都没有。   我是先运行./sample_hifb   然后再运行这个qt程序的。  也试过了 先运行sample_vio 显示器是蓝色的,然后再运行这个qt程序,也是什么反应都没有。  如果不运行sample,直接运行qt程序 会报错。
# ./helloworld3
Failed to open framebuffer /dev/fb0 (Operation not permitted)
linuxfb: Failed to initialize screen
Segmentation fault




按照 论坛里大神的 guitest,换成了3531的头文件和库,在qt5.6.1环境下编译。报错为
failed with 0xa00f8010!
Failed to open framebuffer /dev/fb0 (Operation not permitted)
linuxfb: Failed to initialize screen
Segmentation fault

请问正确的操作方法是什么呢?
我来回答
回答10个
时间排序
认可量排序

lishiqi

0个粉丝

19

问答

0

专栏

0

资料

lishiqi 2016-09-02 15:07:42
认可0
export QT_QPA_PLATFORM='linuxfb:/dev/fb0' 改成export QT_QPA_PLATFORM='linuxfb:fb=/dev/fb0'

jsxyhyj

0个粉丝

3

问答

0

专栏

1

资料

jsxyhyj 2016-09-02 15:31:23
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=37079&ptid=12512]lishiqi 发表于 2016-9-2 15:07[/url]
export QT_QPA_PLATFORM='linuxfb:/dev/fb0' 改成export QT_QPA_PLATFORM='linuxfb:fb=/dev/fb0'[/quote]

好的,谢谢,我试一下。

jsxyhyj

0个粉丝

3

问答

0

专栏

1

资料

jsxyhyj 2016-09-02 16:00:18
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=37079&ptid=12512]lishiqi 发表于 2016-9-2 15:07[/url]
export QT_QPA_PLATFORM='linuxfb:/dev/fb0' 改成export QT_QPA_PLATFORM='linuxfb:fb=/dev/fb0'[/quote]

你好,我试了下。
# export
export HOME='/root'
export LD_LIBRARY_PATH='/usr/local/lib:/usr/lib:/opt/Qt-5.6.1/hisiv100nptl/lib'
export LOGNAME='root'
export OLDPWD='/root'
export PATH='/usr/bin:/usr/sbin:/bin:/sbin'
export PWD='/opt/nfs'
export QT_QPA_FONTDIR='/opt/Qt-5.6.1/hisiv100nptl/lib/fonts'
export QT_QPA_PLATFORM_PLUGIN_PATH='/opt/Qt-5.6.1/hisiv100nptl/plugins'
export SHELL='/bin/sh'
export TERM='vt102'
export USER='root'
# ./helloworld3
This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "/opt/Qt-5.6.1/hisiv100nptl/plugins".

Available platform plugins are: linuxfb, minimal, offscreen.

Reinstalling the application may fix this problem.
Aborted
# ls /opt/Qt-5.6.1/hisiv100nptl/plugins/
/opt/Qt-5.6.1/hisiv100nptl/plugins/bearer/                 /opt/Qt-5.6.1/hisiv100nptl/plugins/imageformats/           /opt/Qt-5.6.1/hisiv100nptl/plugins/platforms/
/opt/Qt-5.6.1/hisiv100nptl/plugins/generic/                /opt/Qt-5.6.1/hisiv100nptl/plugins/platforminputcontexts/
# ls /opt/Qt-5.6.1/hisiv100nptl/plugins/platforms/
libqlinuxfb.so    libqminimal.so    libqoffscreen.so
#

这个是我先运行 sample_vio再运行helloworld3的输出

如果我不运行sample,运行那个根据guitest修改过的helloworld,会报海思的错误码。
# ./helloworld1444
failed with 0xa00f8010!
This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "/opt/Qt-5.6.1/hisiv100nptl/plugins".

Available platform plugins are: linuxfb, minimal, offscreen.

Reinstalling the application may fix this problem.
Aborted
#


////////
我看了下goodman编译的qt5.6.0, /plugins/platforms也是只有这三个文件,没有xcb相关的。
libqlinuxfb.so    libqminimal.so    libqoffscreen.so

jsxyhyj

0个粉丝

3

问答

0

专栏

1

资料

jsxyhyj 2016-09-02 16:14:40
认可0
This application failed to start because it could not find or load the Qt platform plugin "xcb"
是我变量没加。不过加上了,还是没有反应呢。

lishiqi

0个粉丝

19

问答

0

专栏

0

资料

lishiqi 2016-09-02 17:37:05
认可0
编译时加上 -no-xcb 选项

lishiqi

0个粉丝

19

问答

0

专栏

0

资料

lishiqi 2016-09-02 17:37:55
认可0
./configure --prefix=/opt/qt5 -opensource -confirm-license -c++std c++98 -qt-sql-sqlite -plugin-sql-sqlite -no-qml-debug -qt-zlib -qt-libpng -qt-libjpeg -qt-freetype -no-harfbuzz -no-openssl -no-libproxy -nomake examples -no-nis -no-cups -no-tslib -no-icu -no-fontconfig -no-pch -no-dbus -no-use-gold-linker -no-xcb -no-eglfs -no-kms -no-gbm -no-directfb  -xplatform linux-arm-hisiv400-g++
这是我QT5.6的编译参数

jsxyhyj

0个粉丝

3

问答

0

专栏

1

资料

jsxyhyj 2016-09-05 15:33:05
认可0
请问有遇到如下错误吗?
scriptast.o obj/release/qscriptastvisitor.o obj/release/qscriptgrammar.o obj/release/qscriptsyntaxchecker.o obj/release/qscriptlexer.o obj/release/moc_qscriptextensionplugin.o  -L/home/yj/work/qt5.6/qt5.6.1-1/qt-everywhere-opensource-src-5.6.1/qtbase/lib -lQt5Core -lpthread  
obj/release/JSClassRef.o: In function `OpaqueJSClassContextData::~OpaqueJSClassContextData()':
JSClassRef.cpp:(.text+0xd80): undefined reference to `__sync_sub_and_fetch_4'
obj/release/JSClassRef.o: In function `OpaqueJSClassContextData::~OpaqueJSClassContextData()':
JSClassRef.cpp:(.text+0x1208): undefined reference to `__sync_sub_and_fetch_4'
obj/release/JSClassRef.o: In function `OpaqueJSClass::create(JSClassDefinition const*)':
JSClassRef.cpp:(.text+0x14f4): undefined reference to `__sync_sub_and_fetch_4'
obj/release/JSClassRef.o: In function `OpaqueJSClassContextData::OpaqueJSClassContextData(OpaqueJSClass*)':
JSClassRef.cpp:(.text+0x17b4): undefined reference to `__sync_add_and_fetch_4'
obj/release/JSClassRef.o: In function `OpaqueJSClassContextData::OpaqueJSClassContextData(OpaqueJSClass*)':
JSClassRef.cpp:(.text+0x1f98): undefined reference to `__sync_add_and_fetch_4'
obj/release/JSClassRef.o: In function `QTWTF::ThreadSafeShared::deref()':
JSClassRef.cpp:(.text._ZN5QTWTF16ThreadSafeSharedI14OpaqueJSStringE5derefEv[QTWTF::ThreadSafeShared::deref()]+0xc): undefined reference to `__sync_sub_and_fetch_4'
obj/release/JSClassRef.o: In function `QTWTF::ThreadSafeShared::deref()':
JSClassRef.cpp:(.text._ZN5QTWTF16ThreadSafeSharedI13OpaqueJSClassE5derefEv[QTWTF::ThreadSafeShared::deref()]+0xc): undefined reference to `__sync_sub_and_fetch_4'
obj/release/JSClassRef.o: In function `QTJSC::JSCallbackObject::getOwnPropertySlot(QTJSC::ExecState*, QTJSC::Identifier const&, QTJSC::PropertySlot&)':

jsxyhyj

0个粉丝

3

问答

0

专栏

1

资料

jsxyhyj 2016-09-05 16:03:10
认可0
http://blog.csdn.net/wangmingape/article/details/24545775
我找到这个解决方法,
进入Qt源码目录:

cd qt-everywhere-opensource-src-4.8.6

然后:

vim src/script/Makefile

修改:

在LIBS  = 。。。。。。。。。。。。。的结尾添加 -L/opt -llinux-atomic

保存,继续make,就OK了。




vi qtscript/src/Makefile  但qt5.6.1的这里面没有LIBS

jsxyhyj

0个粉丝

3

问答

0

专栏

1

资料

jsxyhyj 2016-09-05 16:38:18
认可0
是改的文件不对,可以了。之前弄的忘了。今天又重新再编译一遍。

jsxyhyj

0个粉丝

3

问答

0

专栏

1

资料

jsxyhyj 2016-09-05 16:54:47
认可0
等会再放在板子上试试。
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

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

Markdown 语法

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

举报类型

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

详细说明

易百纳技术社区