# ARM programming



## balanga (Mar 31, 2017)

I'm a bit confused about how programming on ARM works... I realise that the toolchain needs to be specific to the processor, but does it also need to be specific to the OS...For instance can I compile the 'Hello, world' program on ARM using both a FreeBSD built `gcc` as well as one built for Arch Linux?

The reason I ask is that I have installed an Arch Linux built U-Boot program on a Seagate GoFlex Home dock, and I'd like to know if this program is OS specific or is just a program loader?

Apologies if these are naive questions, but I have virtually no knowledge about ARM computers.


----------



## acheron (Mar 31, 2017)

u-boot is a boot loader, it's not os specific.


----------



## balanga (Mar 31, 2017)

So presumably given that I've installed u-boot according to https://archlinuxarm.org/platforms/armv5/seagate-goflex-home I should be able to carry on following the instructions here https://sites.google.com/site/tingox/seagate_dockstar ...


----------



## Phishfry (Mar 31, 2017)

I do not believe that will work.


"This is where the problems begin, most (if not all) U-Boot provided by the boards vendors aren't configured to include the API, that's why have to compile U-Boot ourselves."
https://www.bidouilliste.com/blog/2015/11/27/Porting-FreeBSD-to-a-new-ARM-Board-Part-1/

More info here:
https://kernelnomicon.org/?p=628


----------

