Using a QT4e app in yocto

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

Using a QT4e app in yocto

跳至解决方案
1,806 次查看
michaeldiamond
Contributor III

I have a qt 4 app that we have compiled and running on an LTIB version of our board.

Now after switching to yocto dizzy and the 3.10.17 kernel, I used the meta-toolchain-qte to compile our app.  When I start the app in the application I get the following error continuously.

QScreenLinuxFb::connect: No such file or directory

Error opening framebuffer device /dev/fb0

....

I am trying to only include the necessary items in my image but here are the image recipes I am including.

inherit core-image

IMAGE_FEATURES += "ssh-server-openssh tools-debug"

IMAGE_FEATURES +=  "debug-tweaks"

IMAGE_INSTALL += "tzdata hostapd linux-firmware-wl12xx wpa-supplicant libusb1 libusb-compat bash openssh-sftp-server"

IMAGE_INSTALL += "qt4-embedded icu"

Am I missing something?

Any help would be appreciated.

Michael

1 解答
970 次查看
michaeldiamond
Contributor III

I got this working and hopefully can be helpful to others with similar issues.  The problem had nothing to do with Qt.  Both the X version and the embedded version did not work. 

The main issue is that the bootloader needed to load a display.  I did not have a display hooked up to the nitrogen6x board and it does not load a video if no screens are detected via i2c. Here are the args that worked for me.

setenv bootargs $bootargs video=mxcfb${nextcon}:dev=ldb,1024x600M@60,if=RGB666

screenres=1024,600

setenv fbmem ${fbmem},10M

My board has a display but we are currently not using it.  To find out if you have any screens loaded type the command

cat /proc/cmdline

It will return something like the following;

enable_wait_mode=off video=mxcfb:dev=ldb,1024x600M@60,if=RGB666 video=mxcfb1:off video=mxcfb2:off video=mxcfb3:off ,10M console=ttymxc1,115200 vmalloc=400M consoleblank=0 rootwait root=/dev/mmcblk0p2 mxc_hdmi.only_cea=1

在原帖中查看解决方案

3 回复数
970 次查看
michaeldiamond
Contributor III

Further information is I tried the qt4e-demo-image and the qte-in-use-image on the nitrogen6x board.

I get the same error on the serial console of the nitrogen board;

QScreenLinuxFb::connect: No such file or directory

Error opening framebuffer device /dev/fb0

QScreenLinuxFb::connect: No such file or directory

Error opening framebuffer device /dev/fb0

QScreenLinuxFb::connect: No such file or directory

Error opening framebuffer device /dev/fb0

QScreenLinuxFb::connect: No such file or directory

Error opening framebuffer device /dev/fb0

I don't have any files in the /dev that are fb0 or any other number.  cat /proc/fb returns empty.  I am not sure how to create a frame buffer.  Doing this with the qt4 images also results in no FB files. 

Does anyone have any info on this?

0 项奖励
回复
971 次查看
michaeldiamond
Contributor III

I got this working and hopefully can be helpful to others with similar issues.  The problem had nothing to do with Qt.  Both the X version and the embedded version did not work. 

The main issue is that the bootloader needed to load a display.  I did not have a display hooked up to the nitrogen6x board and it does not load a video if no screens are detected via i2c. Here are the args that worked for me.

setenv bootargs $bootargs video=mxcfb${nextcon}:dev=ldb,1024x600M@60,if=RGB666

screenres=1024,600

setenv fbmem ${fbmem},10M

My board has a display but we are currently not using it.  To find out if you have any screens loaded type the command

cat /proc/cmdline

It will return something like the following;

enable_wait_mode=off video=mxcfb:dev=ldb,1024x600M@60,if=RGB666 video=mxcfb1:off video=mxcfb2:off video=mxcfb3:off ,10M console=ttymxc1,115200 vmalloc=400M consoleblank=0 rootwait root=/dev/mmcblk0p2 mxc_hdmi.only_cea=1

970 次查看
SergioSolis
NXP Employee
NXP Employee

Thank you for posting the solution Michael, I'm sure it'll help other community members!

0 项奖励
回复