08-17-2017 02:17 AM
I've installed PetaLinuxTools and XSDK on a CentOS 7.1 64-bit machine and now I'm trying to integrate Qt 5.6.2 with PetaLinux 2016.4. To do so, I followed these steps
(of course, I did that by running the proper PetaLinuxTools comand, namely petalinux-config -c rootfs, and then selecting the above mentioned packagegroups).
The problem is that the system is built successfully
NOTE: Tasks Summary: Attempted 4328 tasks of which 4313 didn't need to be rerun and all succeeded.
INFO: Copying Images from deploy to images
INFO: Creating images/linux directory
[INFO] successfully built project
but the system doesn't boot in QEMU
[andrea@localhost avnet-digilent-zedboard-2016.4]$ petalinux-boot --qemu --kernel
INFO: The image provided is a zImage
INFO: Set QEMU tftp to /home/andrea/Xilinx/Projects/avnet-digilent-zedboard-2016.4/images/linux
INFO: TCP PORT is free
INFO: Starting arm QEMU
INFO: qemu-system-aarch64 -M arm-generic-fdt-plnx -machine linux=on -serial /dev/null -serial mon:stdio -display none -kernel /home/andrea/Xilinx/Projects/avnet-digilent-zedboard-2016.4/build/qemu_image.elf -gdb tcp::9000 -dtb /home/andrea/Xilinx/Projects/avnet-digilent-zedboard-2016.4/images/linux/system.dtb -net nic,vlan=1 -net user,vlan=1 -net nic -tftp /home/andrea/Xilinx/Projects/avnet-digilent-zedboard-2016.4/images/linux -device loader,addr=0xf8000008,data=0xDF0D,data-len=4 -device loader,addr=0xf8000140,data=0x00500801,data-len=4 -device loader,addr=0xf800012c,data=0x1ed044d,data-len=4 -device loader,addr=0xf8000108,data=0x0001e008,data-len=4
qemu-system-aarch64: -tftp /home/andrea/Xilinx/Projects/avnet-digilent-zedboard-2016.4/images/linux: The -tftp option is deprecated. Please use '-netdev user,tftp=...' instead.
Warning: vlan 0 is not connected to host network
rom: requested regions overlap (rom dtb. free=0x00000000fffffff8, addr=0x0000000008000000)
-- System halted
Moreover, I cannot even run the Qt tools to cross-compile a Qt application for PetaLinux - by the way, I tried to do so since though it's true that there's a problem with QEMU, it's also true that on my CentOS machine things have gone right.
Am I doing something wrong or missing something huge/trivial here?
Thanks in advance.
08-23-2017 07:49 AM
No one has anything to say/suggest about this subject? At the least, is Qt 5.6.2 known to work/not to work under PetaLinux 2016.4?
I made several attempts and I can add details about them, if that can help. For instance, the system is built successfully and boots if, instead of packagegroup-petalinux-qt, I only install the qtbase package; however, as soon as I add qtbase-dev, I end up again with a system which builds but does not boot.
Any help or hint is greatly appreciated!
08-28-2017 07:57 AM
I’ll give it one last try.
Among other things, I’m thinking about using PetaLinux 2017.2 and consequently the question become: is Qt known to work/not to work under PetaLinux 2017.2? Has anyone been successful in integrating it in the latest version of PetaLinux? If so, which flavor of Linux did you use?
08-28-2017 08:24 AM
08-29-2017 02:45 AM
Thank you very much indeed for your reply!
I’m going to try to make Qt work under PetaLinux 2016.4 for some more time. If in the end that turns out to be unsuccessful, I’ll switch to PetaLinux 2017.2.
By the way, a difference between the TRD and my case is that the former references the ZCU102 evaluation board while I’m working with the ZedBoard.
As a side note, despite the TRD
and in particular
I never got Qt to work under PetaLinux 2016.4.
09-05-2017 03:43 AM
First of all I’d like to thank you for your feedback.
I’ve seen that wiki page and I’ve read it carefully. I consider cross compiling by hand the Qt framework a viable workaround to my problem. However there are two factors that advised me to put this solution in a kind of stand-by state
09-19-2017 10:24 AM
Since I couldn’t integrate Qt with PetaLinux 2016.4 (see my first post in this thread) I tried to integrate it with PetaLinux 2017.2, as suggested. To do that, I followed UG1144 2017.2. Below I report what I did.
At this point, the installation of the basic system is complete and so I decided to make a couple of tests before making any change. In particular
In both cases everything went fine and I was able to boot the system and log into it. By the way, I used QEMU to test the two systems issuing the command
petalinux-boot --qemu --prebuilt 3
in the former case and
petalinux-boot --qemu --kernel
in the latter.
The next step was the integration of Qt with PetaLinux 2017.2. To do that, I followed the suggestions given in both
that is to install packagegroup-petalinux-x11 and packagegroup-petalinux-qt. So I ran
petalinux-config -c rootfs
and looked for the suggested packages in the menuinterface displayed on screen. As for x11, I couldn’t find the mentioned packagegroup, so I had to guess a ‘reasonable, minimal’ set of packages and selected them
then I selected the qt packagegroups
After saving the configuration, I issued the command
and the system built successfully but, when tested with QEMU, the boot froze while decompressing the kernel image, in just exactly the same fashion as PetaLinux 2016.4 did.
Again, am I doing something wrong or missing something huge/trivial?
Thanks in advance.
P.S.: I'm currently investigating the TRD mentioned by Madhubala. In particular, I'm looking at the following files
09-21-2017 08:44 AM
In order to repeat the approach illustrated in the TRD, I prepared a brand new PetaLinux project targeting the ZedBoard. Then, since UG1221 gives plenty of details about the Reference Design but doesn’t contain any information about how to build the underlying PetaLinux system, I began to look into the 3 TRD folders downloaded from the Xilinx site and I found 2 files strictly related to the building of the PetaLinux system employed throughout the TRD
The first file is the same as the one I have before making any change to the default configuration, plus the following two lines
These cause all the packages mentioned in the packagegroup-trd.bb file to be added to the basic PetaLinux system. In particular, the packagegroup-trd.bb file contains the lines shown below
X11_PACKAGES = " \ packagegroup-core-x11-xserver \ packagegroup-core-x11-utils \ dbus \ mini-x-session \ liberation-fonts \ xauth \ xhost \ xset \ xtscal \ xcursor-transparent-theme \ xinit \ xinput \ xinput-calibrator \ xkbcomp \ xkeyboard-config \ xkeyboard-config-locale-en-gb \ xmodmap \ xrandr \ " QT_PACKAGES = " \ qtbase-dev \ qtbase-plugins \ qtsystems-dev \ qtconnectivity-dev \ qtdeclarative-dev \ qtdeclarative-plugins \ qtimageformats-dev \ qtimageformats-plugins \ qtscript-dev \ qtsensors-dev \ qtsensors-plugins \ qtsvg-dev \ qtsvg-plugins \ qttools-dev \ qttools-tools \ qtxmlpatterns-dev \ qtbase-examples \ qtquick1-dev \ qtquick1-plugins \ qtquickcontrols-qmlplugins \ qttools-plugins \ qtcharts \ "
As it turns out, these are not the packages referenced in the wiki page
and in the post
Anyhow, I decided to give it a try. So, starting from the basic system coming from the ZedBoard BSP reference design, I first selected all the packages listed under the X11_PACKAGES heading – apart from the xkeyboard-config-locale-en-gb package which I couldn't find. The system was built successfully and I could boot it. Then I made a second rootfs configuration step adding the packages listed under the QT_PACKAGES heading. This time the system was built successfully but it failed to boot with the message
Error: unrecognized/unsupported machine ID (r1 = 0x00000d32).
Of course I didn’t change anything apart adding the QT_PACKAGES to the system; in particular, I didn’t change anything related to the ‘machine ID’.
Given the above results, I made 2 more tests
In the former case everything went fine while in the latter the PetaLinux was built successfully but failed to boot with the same message as above
Error: unrecognized/unsupported machine ID (r1 = 0x00000d32).
Any help, suggestion or piece of information on the above issues?
06-05-2018 06:02 AM