After we have done all of the local testing of our code and are reasonably certain that it should work on the real hardware, we can use the cross-compile build system to create a binary that we can then run on the target system.
At this point, we can simply copy the resulting binary and associated files to the target system and see whether it works. The more scientific way to do this is to use GDB. With the GDB server service installed on the target Linux system, we can connect to it with GDB from our PC, either via the network or a serial connection.
For SBCs running a Debian-based Linux installation, the GDB server can be easily installed:
sudo apt install gdbserver
Although it is called gdbserver, its essential function is that of a remote stub implementation for the debugger, which runs on the host system. This makes gdbserver very lightweight...