I’m trying to configure PX4 to accept ELRS RC input. As a result, I’m trying to rebuild PX4 with those drivers and upload to my Cubepilot, but I’m getting errors.
So far, I’ve been able to run
./Tools/setup/ubuntu.sh
and
make ark_fmu-v6x_default boardconfig
to enable the ELRS driver. However, when I run
sudo make ark_fmu-v6x_default upload
I get the following output:
PX4-Autopilot$ sudo make
ark_fmu-v6x_default upload
[0/1140] git submodule src/modules/uxrce_dds_client/Micro-XRCE-DDS-Client
[2/1140] Generating ../../../platforms/nuttx/NuttX/nuttx/.config
FAILED: ../../platforms/nuttx/NuttX/nuttx/.config
cd /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx && /usr/bin/cmake -E copy_if_different /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/build/ark_fmu-v6x_default/NuttX/nuttx/Make.defs /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/Make.defs && cat /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/boards/ark/fmu-v6x/nuttx-config/nsh/defconfig /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/build/ark_fmu-v6x_default/NuttX/extra_config_options > /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/.config && /usr/bin/cmake -E copy_if_different /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/boards/ark/fmu-v6x/nuttx-config/nsh/defconfig /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/defconfig && /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/tools/px4_nuttx_make_olddefconfig.sh > /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/build/ark_fmu-v6x_default/NuttX/nuttx_olddefconfig.log && /usr/bin/cmake -E copy_if_different /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/.config /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/build/ark_fmu-v6x_default/NuttX/nuttx/.config
/usr/bin/env: ‘bash\r’: No such file or directory
/usr/bin/env: ‘bash\r’: No such file or directory
/mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/tools/incdir: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/tools/incdir)
/mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/tools/incdir: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/tools/incdir)
/usr/bin/env: ‘bash\r’: No such file or directory
mv: cannot stat '.version.tmp': No such file or directory
/usr/bin/env: ‘bash\r’: No such file or directory
/usr/bin/env: ‘bash\r’: No such file or directory
/mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/tools/incdir: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/tools/incdir)
/mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/tools/incdir: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/platforms/nuttx/NuttX/nuttx/tools/incdir)
/usr/bin/env: ‘bash\r’: No such file or directory
mv: cannot stat '.version.tmp': No such file or directory
/usr/bin/env: ‘bash\r’: No such file or directory
make[2]: *** [tools/Unix.mk:390: clean_dirlinks] Error 127
make[1]: *** [tools/Unix.mk:605: olddefconfig] Error 2
[4/1140] Generating Mavlink uAvionix: sr...nk/message_definitions/v1.0/uAvionix.xm
FAILED: mavlink/uAvionix/uAvionix.h
cd /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/build/ark_fmu-v6x_default/src/modules/mavlink && /usr/bin/python3 /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/src/modules/mavlink/mavlink/pymavlink/tools/mavgen.py --lang C --wire-protocol 2.0 --output /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/build/ark_fmu-v6x_default/mavlink /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/src/modules/mavlink/mavlink/message_definitions/v1.0/uAvionix.xml > /mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/build/ark_fmu-v6x_default/src/modules/mavlink/mavgen_uAvionix.log
Traceback (most recent call last):
File "/mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/src/modules/mavlink/mavlink/pymavlink/tools/mavgen.py", line 16, in <module>
from pymavlink.generator import mavgen
File "/mnt/c/Users/<usr>/OneDrive/Desktop/PX4-Autopilot/src/modules/mavlink/mavlink/pymavlink/generator/mavgen.py", line 28, in <module>
from future import standard_library
ModuleNotFoundError: No module named 'future'
ninja: build stopped: subcommand failed.
make: *** [Makefile:227: ark_fmu-v6x_default] Error 1
The last error about No module named 'future'
is odd considering when I run pip install future
, I get a Requirement already satisfied
output message…
I’m using Ubuntu 20.04.6 LTS in WSL2 in Windows 11.
Am I doing something wrong? Also, why is getting ELRS to work with PX4 such a pain? With ELRS being fairly popular (as far as I can tell), why not have that driver already enabled in the standard firmware?