# Building pynq.remote image checkenv error \[RFSoC 4x2\]

**URL:** <https://discuss.pynq.io/t/building-pynq-remote-image-checkenv-error-rfsoc-4x2/8961>\
**Category:** Support\
**Created:** [January 13, 2026, 9:22pm UTC](https://discuss.pynq.io/t/building-pynq-remote-image-checkenv-error-rfsoc-4x2/8961 "2026-01-13T21:22:29Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Riley\_P](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/riley_p/32/7432_2.png) [@Riley\_P](https://discuss.pynq.io/u/Riley_P)\
**Post date:** [January 13, 2026, 9:22pm UTC](https://discuss.pynq.io/t/building-pynq-remote-image-checkenv-error-rfsoc-4x2/8961/1 "2026-01-13T21:22:29Z")

</div>

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:

 ![image](https://us1.discourse-cdn.com/flex019/uploads/pynq1/original/2X/e/e56a7b5d78bd6bd16c5e8b3f5e3559e6d92fbbcc.png)

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!! 🙂

---

<div class="post-metadata">

**Author:** ![joshgoldsmith](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/joshgoldsmith/32/5347_2.png) [@joshgoldsmith](https://discuss.pynq.io/u/joshgoldsmith)\
**Post date:** [January 14, 2026, 9:43am UTC](https://discuss.pynq.io/t/building-pynq-remote-image-checkenv-error-rfsoc-4x2/8961/2 "2026-01-14T09:43:53Z")

</div>

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](https://github.com/Xilinx/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

```bash
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).

---

<div class="post-metadata">

**Author:** ![Riley\_P](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/riley_p/32/7432_2.png) [@Riley\_P](https://discuss.pynq.io/u/Riley_P)\
**Post date:** [January 15, 2026, 5:56pm UTC](https://discuss.pynq.io/t/building-pynq-remote-image-checkenv-error-rfsoc-4x2/8961/3 "2026-01-15T17:56:08Z")

</div>

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](https://discuss.pynq.io/uploads/short-url/imKuBFZmzNO1KMEqjyd5cq7nMSz.txt) (8.1 KB)

---

<div class="post-metadata">

**Author:** ![joshgoldsmith](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/joshgoldsmith/32/5347_2.png) [@joshgoldsmith](https://discuss.pynq.io/u/joshgoldsmith)\
**Post date:** [January 16, 2026, 12:39pm UTC](https://discuss.pynq.io/t/building-pynq-remote-image-checkenv-error-rfsoc-4x2/8961/5 "2026-01-16T12:39:19Z")

</div>

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

```bash
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

```bash
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.

---

<div class="post-metadata">

**Author:** ![system](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/system/32/2_2.png) [@system](https://discuss.pynq.io/u/system)\
**Post date:** [January 20, 2026, 5:42pm UTC](https://discuss.pynq.io/t/building-pynq-remote-image-checkenv-error-rfsoc-4x2/8961/7 "2026-01-20T17:42:20Z")

</div>

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.
