PYNQ: PYTHON PRODUCTIVITY

PYNQ build error

I am trying to build the latest PYNQ and I’ve got an error:

[LabBuildApp] Building in /usr/local/share/jupyter/lab
[LabBuildApp] Yarn configuration loaded.
[LabBuildApp] Node v8.10.0

[LabBuildApp] Building jupyterlab assets (build:prod)
[LabBuildApp] > node /usr/local/lib/python3.6/dist-packages/jupyterlab/staging/yarn.js install --non-interactive
[LabBuildApp] yarn install v1.15.2
[1/5] Validating package.json…
[2/5] Resolving packages…
[3/5] Fetching packages…
info There appears to be trouble with your network connection. Retrying…
error get-stream@6.0.1: The engine “node” is incompatible with this module. Expected version “>=10”. Got “8.10.0”
error Found incompatible module
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

[LabBuildApp] npm dependencies failed to install
[LabBuildApp] Traceback (most recent call last):

[LabBuildApp] File “/usr/local/lib/python3.6/dist-packages/jupyterlab/debuglog.py”, line 47, in debug_logging
yield

[LabBuildApp] File “/usr/local/lib/python3.6/dist-packages/jupyterlab/labapp.py”, line 98, in start
command=command, app_options=app_options)

[LabBuildApp] File “/usr/local/lib/python3.6/dist-packages/jupyterlab/commands.py”, line 459, in build
command=command, clean_staging=clean_staging)

[LabBuildApp] File “/usr/local/lib/python3.6/dist-packages/jupyterlab/commands.py”, line 660, in build
raise RuntimeError(msg)

[LabBuildApp] RuntimeError: npm dependencies failed to install

[LabBuildApp] Exiting application: JupyterLab

My settings:

  • Xilinx PetaLinux 2020.1 Vitis 2020.1
  • Ubuntu 18.04.4 LTS
  • PYNQ branch: master

I’m getting the same error, although I don’t get this one line:

Using Ubuntu 16.04.5 LTS (other tools are the same as @skorolcz ). Haven’t found a workaround just yet.

What board are you building for? Are you using the prebuilt Ubuntu image?

Yes, I’ve used prebuild image and after all, I’ve built the proper image. This error is the same when I am trying to install any Jupyter Lab extension. So, or I have this error during image building or in the working system.

Some internal dependency of JupyterLab has been updated to require a newer version of node than is present in the image. If you’re happy making changes to your live image rather than using the sdbuild flow you can follow the instructions below to update your node version and get JupyterLab builds up and running again.

curl -fsSL https://deb.nodesource.com/setup_12.x > setup_node.sh

edit setup_node.sh and add the following at line 222 with the similar ones

check_alt "pynqlinux"     "WFH" "Ubuntu" "bionic"

Then run

sudo bash setup_node.sh
sudo apt-get install -y nodejs

Peter

@PeterOgden

I am trying to create a Pynq image for a custom board. Having a heck of a time getting the system to build with no errors, I’ve done it once…had build errors ever since when trying to make a new image.

My biggest issue is that my SD card is on SD1. Is there a simpler way to create a custom image than running the entire SD build flow for my SoC configuration?

Hi skorolcz, how do you manage to build the proper image, without this npm error?

I’ve used the prebuild board-agnostic image to create an SD card image
cd /sdbuild/
make PREBUILT= BOARDS=
images are available at PYNQ - Python productivity for Zynq - Board
Then when the system is ready I’ve upgraded the node

1 Like

https://pynq.readthedocs.io/en/latest/pynq_sd_card.html#using-the-prebuilt-board-agnostic-image

1 Like

Thank you for the help!

This doesn’t work for me either. Nor build, nor pre-build (even with boards dir) works.
Can anyone from Pynq-team elaborate with the problem?
We would like to build an image with custom .hwh files for ultra96v2.

We also have purchased an Ultra96v2 board.
We are trying to use Pynq with our custom OpenCL kernel code implemented in VITIS. We have taken VITIS xclbin output and attempted to run in on Ultra96v2 and PYNQ. However this does not work.

To that end, we are trying to build our own image of the PYNQ SD card with the sdbuild and we have reached the same problem with the following commands from the guide:
make clean
make BOARDDIR=$LOCAL_ULTRA96

We have then attempted to use the prebuilt image as suggested from the previous comments with the following command:
make PREBUILT=(path to image) BOARDS=Ultra96 BOARDDIR=$LOCAL_ULTRA96

However that also does not compile.

Is there a flow that can work to build the PYNQ SD iso that bypasses the jupyter issue?
Is there a way to force the update of nodejs prior to installation of jupyter?
Is there a way to remove jupyter from the installation in the sdbuild and to install it later after the iso has been built?

Regards,
Evangelos.