The Blackfin tool chain consists of several utilities which accomplish the basic tasks required to create executable programs: compiling, assembling, and linking. First standard C code is converted into Blackfin assembly code by the complier, bfin-elf-gcc. The assembler, bfin-elf-as, then takes this code and creates Executable and Linkable Format (ELF) object files. These ELF files are linked together by the utility bfin-elf-ld or included in an archive library by the utility bfin-elf-ar. The ELF files must then be converted into a binary format compatible with uClinux. This conversion is done by the utility bfin-elf-elf2flt which converts ELF files into flat binary format files. The way in which the compiler controls the assembler, linker, and archiver depends on the source input files and the compiler options used.