On 26.07.18 08:29, cyaiplexys wrote: > I'd like to try a native compiler but also I would like to have something I > could compile for Arduino (here we go again) and ARM and other CPUs as well.
$ apt-cache search avr | more arduino - AVR development board IDE and built-in libraries libavresample-dev - FFmpeg compatibility library for resampling - development files libavresample4 - FFmpeg compatibility library for resampling - runtime files gcc-avr - The GNU C compiler (cross compiler for avr) avrdude-doc - documentation for avrdude avr-libc - Standard C library for Atmel AVR development gdb-avr - The GNU Debugger for avr avrdude - software for programming Atmel AVR microcontrollers binutils-avr - Binary utilities supporting Atmel's AVR targets When you install gcc-avr, binutils-avr will also be installed, else gcc-avr can't produce executables. You can use avr-as to assemble your own assembler source files, but if you put your *.S files through gcc-avr, then you can use the 'C' header files, with cpp doing the macro mappings. Unless arduinoing, you'll probably want to install "make", as it's very handy for building a code suite. (Duno what arduino uses, but IDEs usually try to appear to do something more than the elements of a CLI build environment - aka "*nix is the IDE") Once entangled in the peripherals (initialisation and utilisation) of one CPU, you'll find enough to learn that hopping on to the next target will not immediately appeal. However, what you learn of the GNU toolchain on one target is equally applicable to the next. (E.g. ld, objdump, nm, ar, gprof, gdb, readelf, ...) Read the avrdude manpage and avrdude-doc for suitable programming dongles, or just hop on ebay. Maybe buy a couple of arduinos while there, leave the bootloader intact, and produce your code with the GNU toolchain if arduino "sketches" seem too naff. They're easier, than a laptop, to screw to a post if the project is a computerised birdfeeder. (And easier to power out there.) Arduino: # apt-get install arduino Then read all doco, and google. X86: Similar to above. Erik