4.6. Build Variables

Setting Host and Target

During the building of the cross-compile tools you will need to set a few variables that will be dependent on your particular needs. The first variable will be the triplet of the host machine, which will be put into the CLFS_HOST variable. To account for the possibility that the host and target are the same arch, as cross-compiling won't work when host and target are the same, part of the triplet needs to be changed slightly - in our case, we will change part of the triplet to "cross". Set CLFS_HOST using the following command:

export CLFS_HOST=$(echo ${MACHTYPE} | sed -e 's/-[^-]*/-cross/')

Now you will need to set the triplet for the target architecture. Set the target variable using the following command:

export CLFS_TARGET="[target triplet]"

Replace [target triplet] with the appropriate machine triplet using the table at the bottom of the page.

Copy settings to the Environment

Now add these to ~/.bashrc, just in case you have to exit and restart building later:

cat >> ~/.bashrc << EOF

Table 4.1. Processor Type and Target Triplets

Processor Target Triplet
386 Compatibles Not Supported By Glibc
486 Compatibles i486-pc-linux-gnu
Pentium, K6, 586 Compatibles i586-pc-linux-gnu
Pentium II, Pentium III, Pentium 4 i686-pc-linux-gnu
Athlon, Duron i686-pc-linux-gnu