Basic Compilation The latest version of Linux for the Blackfin processor can be obtained from the Blackfin Linux website. For a list of processors which the latest release supports, check out the uClinux Features page. Click on the Files tab to obtain the latest release of our uClinux distribution. The Blackfin toolchain must be installed before the uClinux distribution can be compiled. For more information, seeInstalling the Blackfin Toolchain. If already running a Linux host, check out theconfiguresection ofInstall & Configure Linuxin ordere.g. (for example)to avoid error messages in different make processes. Depending on the version of uClinux there may be a variety of file types available. These file types are summarized below: files with no extension - These files can be anything. Use the unix file command to determine what file type it is. user@host:~/uClinux-dist> file linux-2.6.x/linux linux-2.6.x/linux: ELF 32-bit LSB executable, version 1 (SYSV), statically linked, not stripped user@host:~/uClinux-dist> file linux-2.6.x/Makefile linux-2.6.x/Makefile: ASCII English text user@host:~/uClinux-dist> file config.arch config.arch: symbolic link to `vendors/AnalogDevices/BF537-EZKIT/config.arch' ELF (Executable and Linking Format) files are pre‑compiled memory images ready for download to the target system. They provide a good starting point because no other steps are needed before running on the target board. .tar.bz2 files - These files are compressed archives of files. They must be decompressed with bunzip2 and extracted with tar. The source can then be compiled into an ELF (Executable and Linking Format), or compressed binary file which can be loaded onto the target system. Compiling the uClinux distribution from source allows for customization of the kernel as well as a choice of helper applications. .tar.gz files - The same as *.tar.bz2 files except that they must be decompressed with gzip. Patch files - These files apply changes and bug fixes to the Linux kernel. Instructions on applying a particular patch can be found in the release description. Instructions on compiling the uClinux distribution from source are given below. First decompress and extract the source files by enter the following commands: bash$ bunzip2 -d **(for *.bz2 files) bash$ gzip -d ** (for *.gz files) bash$ tar -xvf Apply any patches as per instructions given in the release description. Generally only the latest patch will need to be applied. Next change directory (cd) to the uClinux-dist directory that was created and type the following command: bash$ make menuconfig If you would like to change a platform, e.g, from BF533 STAMP to BF537 STAMP, please do a“make clean”before compile. Otherwise, there may be unexpected errors. Also if you met unexpected errors while compiling kernel, you may try to do a“make clean”. Some users may be wish to use make xconfig which is a graphical user interface. To use this newer versions of the kernel may require the QTGUI (Graphical User Interface)development libraries to be installed. If these libraries are not installedxconfigmay not work. Ifxconfigdoes not work use themake menuconfiginstead.make xconfigpresents a graphical interface whilemake menuconfigpresents a text based interface. After a few commands are executed the Embedded Linux Configuration window should be displayed: Vendor/Product Selection ---> Kernel/Library/Defaults Selection ---> --- Load an Alternate Configuration File Save an Alternate Configuration File Click on Vendor/Product Selection. The Vendor/Product Selection window should now appear: --- Select the Vendor you wish to target Vendor (AnalogDevices) ---> --- Select the Product you wish to target AnalogDevices Products (BF537-STAMP) ---> Ensure Analog Devices is selected under Vendor. Ensure BF533 is selected under ADI (Analog Devices, Inc.) Products when compiling for the STAMP board. Click Main Menu to return. Back at the Embedded Linux Configuration window click on Kernel/Library/Defaults Selection. The Kernel/Library/Defaults Selection window should now appear: --- Kernel is linux-2.6.x --- Libc is None [ ] Default all settings (lose changes) [ ] Customize Kernel Settings [ ] Customize Application/Library Settings [ ] Update Default Vendor Settings Select 'y' for Customize Kernel Setting and Customize Vendor/User Settings Click Main Menu then click Save and Exit. After a few more commands are executed the Kernel Configuration window should be displayed: General setup ---> [*] Enable loadable module support ---> [*] Enable the block layer ---> Preemption Model (Voluntary Kernel Preemption (Desktop)) ---> Blackfin Processor Options ---> Bus options (PCI, PCMCIA, EISA, MCA, ISA) ---> Executable file formats ---> Power management options ---> CPU Frequency scaling ---> Networking ---> Device Drivers ---> File systems ---> [*] Instrumentation Support ---> Kernel hacking ---> Security options ---> [ ] Cryptographic API ---> Library routines ---> --- Load an Alternate Configuration File Save Configuration to an Alternate File The kernel configuration window allows you to configure various kernel options and device drivers. If this is the first time compiling the kernel it is recommenced that you keep the default options by choosing File-Save followed by File-Exit. Later you can try recompiling the kernel with different options enabled. Some options are experimental and may not compile or produce stable results. After a few more commands are executed the User Application Configuration window should be displayed: Library Configuration ---> Core Applications ---> Flash Tools ---> Filesystem Applications ---> Network Applications ---> Miscellaneous Applications ---> BusyBox ---> Tinylogin ---> MicroWindows ---> Games ---> Miscellaneous Configuration ---> Debug Builds ---> Blackfin test programs ---> Blackfin app programs ---> Blackfin canned demos ---> Blackfin device drivers (Experimental) ---> Blackfin build options ---> --- Load an Alternate Configuration File Save an Alternate Configuration File This window allows you to select various helper applications to include. If this is the first time compiling the kernel it is recommenced that you keep the default options by simply clicking Save and Exit. Later you can try recompile uClinux with different helper applications added. Some programs are experimental and may not compile or produce stable results. Configuration is now complete. Next the kernel and root file system must be updated. To do this enter the command: bash$ make Compiling the kernel may take several minutes. After the kernel has compiled successfully, a bunch of image files will be produced in the images subdir that can be loaded onto the target system via U-Boot. For information on these image files, see the images page. For information on U-Boot, see the U-Boot section of this document. Standard input and output in Linux are handled through a serial connection. To communicate with the target system a terminal program and a serial link are required. For more information on setting up a terminal program to communicate with Linux see Terminal Programs on page . The default username for the Blackfin login isrootand the password isuClinux.