In questo momento, mentre lavoro sul mio laptop (amd64), posso già compilare codice tramite SSH su un BeagleBone (armhf).
Quello che sto cercando di fare ora è essere in grado di utilizzare qualsiasi IDE per eseguire il debug di quel codice (Code::Blocks, KDevelop o Qt Creator).
 Quindi, ho pensato di eseguire gdbserver su BeagleBone e mi connetto ad esso, ma mi dà un errore di valore imprevisto alla risposta. L'ho letto e sembra che sia necessario creare localmente un eseguibile armhf, per gdb processare. Ma immagino che necessiti anche di un gdb orientato a armhf creato per amd64, quindi ho provato a installare crossbuild-essential-armhf . Per questo, ho aggiunto l'architettura armhf con dpkg --add-architecture armhf , ma poi non sono in grado di eseguire un aggiornamento apt-get. Ne ricevo moltissimi:
Err http://security.ubuntu.com trusty-security/main armhf Packages             
  404  Not Found [IP: 2001:67c:1562::13 80]
Se controllo i repository, in effetti non hanno armhf da nessuna parte.
Allora, cosa sto sbagliando? Inoltre, è questo il modo corretto per eseguire il debug remoto con un'architettura diversa o c'è un modo migliore per farlo?
Risposta accettata:
 Ubuntu usa repository separati per armh (cioè http://ports.ubuntu.com/ ).
 Per poter installare correttamente crossbuild-essential-armhf devi seguire questi passaggi:
-  esegui dpkg --add-architecture armhf
-  specifica l'architettura corretta per TUTTE le tue righe di apt deb in /etc/apt/sources.liste/etc/apt/sources.list.d, ad esempio:deb [arch=amd64,i386] http://archive.ubuntu.com/ubuntu trusty main universe deb [arch=armhf] http://ports.ubuntu.com/ trusty main universe
 Nota che non ha senso specificare l'arco per le righe deb-src.
 3. esegui apt-get update 4. esegui apt-get install crossbuild-essential-armhf 
Dai un'occhiata a https://wiki.debian.org/Multiarch/HOWTO
Potresti anche voler eseguire questi comandi in un chroot (o forse un contenitore docker) come menzionato da questa guida:Guida introduttiva a MultiArch (armel / armhf) in Ubuntu