Вы хотите построить статически связанный двоичный файл (без участия ld.so), и вы запускаете его, переходя к точке входа. Точка входа обычно является началом раздела .text. Можно узнать на нем objdump --section-headers image , чтобы узнать его адрес.
Если вы пытаетесь запустить на встроенном устройстве, посмотрите, как создается и загружается ядро встроенной ОС. Например, посмотрите, как U-Boot использует систему на основе Linux, основанную на Ангстреме.