An application binary interface (ABI) describes the low-level interface between a computer program and the operating system. Specifying the ABI is part of the process of fine tuning the cross-compilation toolchain for the selected platform. A good overview of ABIs is provided by the following wikipedia entry: http://en.wikipedia.org/wiki/Application_binary_interface
The following table gives the entries for the different ABI's that CLFS Embedded supports. Make sure you select one for your build, this will ensure compatability of your build with your target platform.
Table 6.1. List of Build Variables
Kernel | ABI | CLFS_ABI=Value | Notes |
---|---|---|---|
MIPS32_O32 | O32 | 32 | For 32 bit CPUs only |
MIPS32_N32 | N32 | n32 | For 64 bit CPUs operating in 32 bit mode |
N64 | 64 | For 64 bit CPUs operating in 64 bit mode |
Based on a review of the kernel configuration file and the preceeding table, we set CLFS_ABI as follows:
export CLFS_ABI=32 echo export CLFS_ABI=\""${CLFS_ABI}\"" >> ~/.bashrc