Hello,
I am trying to build a custom image for the RFSoC 4x2 board so my team and I can use the new remote features of 3.1.2. Unfortunately, I am running into an error I cannot figure out:
I get this checkenv error but can’t seem to fix it. I have opened Vitis and used the “source” command to make sure the container can access it. Vitis is located in the standard /tools/Xilinx/… directory. It is structured the same as Vivado and I have not altered it since it was installed. I have chmod’ed 777 for all files trying to fix this, too.
If there are some troubleshooting steps I can take or if one of you have any advice, please comment on this post! Thank you!! 
Hi @Riley_P
Welcome to the PYNQ community!
To understand the error you’re seeing I would have to understand a bit more of your setup. Typically, to build an RFSoC4x2 image you would need to run the make command from within the RFSoC-PYNQ repo, not the PYNQ repo.
If you’re looking to build a remote image for the RFSoC4x2, there is already a pynqremote target in the latest RFSoC-PYNQ Makefile that will do this for you.
From within the PYNQ SD Build Docker container (and with the Vivado/Vitis tools sourced):
- Clone the RFSoC-PYNQ repo and
cd into it
git clone --recursive https://github.com/Xilinx/RFSoC-PYNQ.git
cd RFSoC-PYNQ
- Then just run
BOARD=RFSoC4x2 make pynqremote
This should get you a basic remote image for the 4x2 and allow you to use functionality like Overlay download, MMIO, DMA, and GPIO. However, the RF features of the RFSoC are not available at the moment for remote (working on that at the moment).
Thank you for your reply! I was not aware the RFSoC4x2 pynq repository had the necessary board files and makefile for the pynq.remote functionalities. I followed what you said to do and added the .bsp files to the locations that need them. Unfortunately, running the make failed. I attached the log to this post of what failed. It seems to be a python function that failed finding the axi_gpio blocks for the board? I will try to debug on my own, but any suggestions/help would be much appreciated.
Thank you again!
log.do_compile.55520.txt (8.1 KB)
Hi @Riley_P
I just went through the process myself of building a PYNQ.remote image for the RFSoC4x2 and was able get a working image built.
These are the commands I ran:
Setting up the PYNQ Docker container
export XILINX_TOOLS_PATH=/path/to/Xilinx/tools # e.g. /tools/Xilinx
export PETALINUX_TOOLS_PATH=/path/to/petalinux/tools # e.g. /home/$USER/petalinux
mkdir rfsoc4x2-remote-image-build-test
pushd rfsoc4x2-remote-image-build-test
git clone --recursive https://github.com/Xilinx/PYNQ.git PYNQ
pushd PYNQ/sdbuild/
docker build --build-arg USERNAME=$(whoami) --build-arg USER_UID=$(id -u) --build-arg USER_GID=$(id -g) -t pynqdock-test:latest .
popd
docker run --init --rm -it -v $XILINX_TOOLS_PATH:$XILINX_TOOLS_PATH:ro -v $PETALINUX_TOOLS_PATH:$PETALINUX_TOOLS_PATH:ro -v $(pwd):/workspace --name pynq-sdbuild-env-test --privileged pynqdock-test:latest /bin/bash
From within the PYNQ Docker container
export XILINX_TOOLS_PATH=/path/to/Xilinx/tools # e.g. /tools/Xilinx
export PETALINUX_TOOLS_PATH=/path/to/petalinux/tools # e.g. /home/$USER/petalinux
source $XILINX_TOOLS_PATH/Vivado/2024.1/settings64.sh
source $PETALINUX_TOOLS_PATH/2024.1/settings.sh
git clone --recursive https://github.com/Xilinx/RFSoC-PYNQ.git
pushd RFSoC-PYNQ
wget https://github.com/RealDigitalOrg/RFSoC4x2-BSP/raw/refs/heads/master/bsp_releases/RFSoC4x2_2024_1.bsp -O boards/RFSoC4x2/RFSoC4x2.bsp
make pynqremote BOARD=RFSoC4x2
This took around 30 minutes to build the image.