Это будет кошмар. Вам нужны статические версии всех этих библиотек (файлы * .a вместо файлов * .so). Кроме того, при наличии файлов * .so файлы * .a будут игнорироваться компоновщиком.
Вам лучше всего использовать общие ссылки и связывать нужные вам файлы * .so вместе с вашим приложением. Добавьте rpath к вашим флагам сборки, чтобы исполняемый файл загружал связанные библиотеки. Если вы отправляете их в каталог lib
вместе с исполняемым файлом приложения, вам необходимо добавить -Wl,-rpath -Wl,$ORIGIN/lib
к вашим флагам GCC.
Другим возможным решением является создание AppImage:
https://appimage.org
Это прекрасно работает для Linux на базе Intel. Я не знаю, насколько хорошо это работает для ARM.