My goal is to simply rebuild the PYNQ image for Pynq-Z1. I have cloned the PYNQ repo but I don’t know what version of PYNQ is it (perhaps 2.3). The Vivado, SDx and Petalinux version is 2018.3 and I’m using Ubuntu 16.04 in an VMware environment. Before everything I ran the setup_host.sh script. And finally I ran make BOARDS=Pynq-Z1 command in the sdbuild directory. After some time I came up with the following error:
I made the suggested changes and it failed again. The latest output is saved in attachment. new 1.txt (124.8 KB)
I understand it goes:
all the way down to line#1931- the makefile line#263 is being executed
#1932 - makefile line#264 i.e. run mount_images.sh
#1933/34 - echo of the mount_points from inside mount_image.sh
#1935 - makefile line#265 i.e run install_packages.sh
then, after set -x, it start listing install_package.sh, and anything else called by it, while executing until line #2021, when pynq/qemu.sh line#31 spits an output about invalid user…
and then I lose it I can’t follow it after “unmount special”
A function called by trap in install_packages.sh…
I would say there s some problem installing packages?
Please help!
Best regards
The failure looks better than last time. At least you got pandas and sigrok built successfully.
The error seems to be invalid user for chown command. Let me clarify a few things: 1. are you using a prebuilt rootfs image, or building the rootfs image from scratch? 2. did you run make clean before you run any make?
I followed your instruction, but my problem differs from that of gpcus!
I also unmounted every image the previous process made and did a make clean before performing the new make.
Now the error is:
cp --sparse=always /home/user/Desktop/PYNQ/sdbuild/build/bionic.arm.stage1.img
/home/user/Desktop/PYNQ/sdbuild/build/bionic.arm.stage2.img
/home/user/Desktop/PYNQ/sdbuild/scripts/mount_image.sh
/home/user/Desktop/PYNQ/sdbuild/build/bionic.arm.stage2.img
/home/user/Desktop/PYNQ/sdbuild/build/bionic.arm
loop0p1
loop0p2
mount: special device /dev/mapper/loop0p2 does not exist
mount: mount point /home/user/Desktop/PYNQ/sdbuild/build/bionic.arm/boot does not exist
QEMU_EXE=/opt/qemu/bin/qemu-arm-static PYNQ_BOARD=Unknown ARCH=arm /
home/user/Desktop/PYNQ/sdbuild/scripts/install_packages.sh
/home/user/Desktop/PYNQ/sdbuild/build/bionic.arm gcc-mb python_packages_bionic libsds
jupyter phantomjs-fix pandas sigrok
+ target=/home/user/Desktop/PYNQ/sdbuild/build/bionic.arm
+ shift
+ fss='proc run dev'
+ for fs in '$fss'
+ sudo mount -o bind /proc /home/user/Desktop/PYNQ/sdbuild/build/bionic.arm/proc
mount: mount point /home/user/Desktop/PYNQ/sdbuild/build/bionic.arm/proc does not exist
Makefile:299: recipe for target '
/home/user/Desktop/PYNQ/sdbuild/build/bionic.arm.stage2.img' failed
make: *** [/home/user/Desktop/PYNQ/sdbuild/build/bionic.arm.stage2.img] Error 32
By the way, addressing your first question, I’m using make command instead of image_from_prebuilt.sh so I think I’m building the Pynq-Z1 image from scratch (which should be a trivial task!).
Hello Rock, unfortunately we are on different time, I am based in UK, so there is always a significant slack between replies.
I believe I am building from scratch.
I set up the VM as instructed
I am running make BOARDDIR=myBoardPath
I run make clean before
xilinx user is added in create_rootfs.sh. I am now looking at it… it is run at makefile#271.
unfortunately it must be so far back that nothing of it was logged…
I attach a new, longer log, showing xilinx user being added at an earlier stage. putty.1st.log (3.4 MB)
One thing to make sure, is to unmount all the images before running a make clean. So before running make again, make sure sudo losetup -a returns nothing. If there is an image mounted, use
Hi Rock,
Can you point me to where, in the log file attached in the previous reply, I got an error mounting the stage 2 image?
I have no disk space problem, the VM is 200GB on a server, not on my workstation
Thanks
Hello there,
I normally do a build on clean machine after power up, there is nothing mounted and there is no build/bionic.arm/boot, no build/bionic.arm. The link you mention above is of interest, though, exactly the same error! On monday I’ll see if I can progress further. Do you think the four chmod lines in pynq qemu.sh where the make fails are of paramount importance? Worth to comment it out and see where how far it goes?
Best regards
No need to open that issue. I am curious about how it failed. It looks pretty normal when you finished installing pynq package, then you unmount all the disks, that error message is not clear to me how it failed.
One thing to try, is to manually go through those package installation to see why the package failed. I think you can leverage the mount_image.sh, install_package.sh, and unmount_image.sh, just like what the Makefile is doing.
I didn’t do it myself. The VM was setup from IT, I only installed software, run setup_host.sh, cloned GitHub and installed few bits and bobs setup_host miss (cython and dlibz:i386)
The fact that I can sudo without having to enter a password seems sufficient to say it is ok.
in your log file. One thing to try quickly, is to disable those 4 chown commands (for some reasons they failed, and you only see the first chown command)
Is there any restrictions on your sudo rights? Also, if you know how to chroot to your image, you can do a quick try of chown call by itself. I think it might be related to your environment.
P.S. to chroot to your image, when the make fails, do not unmount it or delete it, just do this command immediately:
This will bring you onto the QEMU environment. You can exit it by typing exit anytime. While in the QEMU environment, try to make a folder somewhere and chown xilinx:xilinx <your_folder> to see if it works.
This is fine. Keep in mind that you will have to unmount all the old images before you run a make. Easier way might be restart your VM, run a make clean, then run make.
Unfortunately I could not achieve any further progress in running make BOARDS=Pynq-Z1 command. However, as my final goal is to rebuild the PYNQ image for ZC706 board, I used the image_from_prebuilt.sh script to make an image from a prebuilt generic arm image.
Fortunately this script finished successfully. The problem is I cannot connect to the board via ethernet port (I communicate with board through serial port). When I run ifconfig command in the Pynq running on the ZC706 board I just see the lo (loopback):