Launch sample apps standalone without App managerFor debugging purpose you can run your applications standalone without the app manager. Once ssh into the raspberry Pi do the following,
A — Shutdown the app manager.
systemctl stop appmanager
B — Start the westeros service (Needed for graphics to be displayed).
systemctl start westeros
C — Run the provided run_partner_app.sh script provided in the partnerapps folder.
/usb/partnerapps/run_partner_app.shBy default the above shell script runs the rne_triangle sample app. But it can easily be modified to run any app of your choosing by editing the last line in the script.
D — To use the app manager again, just start its service back up.
systemctl start appmanager
Breakpad supportGoogle breakpad support is available for the applications. For more information about Google breakpad and it’s integration, check this:
View — Breakpad
TroubleshootingIf a shared library has secondary dependencies which it cannot resolve, the following linker flags should be added to tell the linker to ignore its undefined symbols
GDB SupportCurrently GDB is not shipped with the firmware/SDK. It can be built with the sdk and copied to the device. Shell/SSH access is necessary to use it.
Download the source for gdb.
A — Make sure you are in a shell setup for Firebolt Development. Create a directory for installing gdb.
B — Enter the directory of the downloaded gdb source, CONFIGURE_FLAGS is already set in a Firebolt shell for cross compiling needs.
./configure $CONFIGURE_FLAGS --prefix=/path/to/gdb_install make //make install At the root of your usb key, create a usr //directory cd /path_to_root_of_usb_key mkdir usr
C — Copy contents of gdb_install directory into usr on your usb key
cp -r gdb_install/* /path_to_root_of_usb_key/usr/
D — Insert usb key into device. Edit run_partner_app.sh script with the following:
E — Add the above to the script so gdb libs can be found. Change the launch line to prefix with the path to gdb on the key
F — This launch script provided with the Firebolt SDK can be modified to launch any binary built with and without gdb. The launch script should be at the root of the partnerapps folder.
CaveatSometimes compiled library dependencies can exist in the Firebolt sdk but not on the firmware. For example, when running GDB it may say its missing
A — This can be resolved by copying the needed Firebolt SDK library onto our new lib directory on the key:
cp /path_to_sdk/sysroots/cortexa15t2hf-neon-rdk-linux-gnueabi/lib/libncurses.so.5 /path_to_root_of_usb_key/usr/lib/