Difference between revisions of "Creating Native Build Environment"

From Gumstix User Wiki
Jump to: navigation, search
(This page lists the steps necessary to create a native build environment for OE builds using glibc)
 
(remove spam)
 
(8 intermediate revisions by 6 users not shown)
Line 1: Line 1:
From a clean image, the following packages must be installed via ipkg (after performing 'ipkg update'):
+
[[Category:How_to_-_general]]
 +
__FORCETOC__
 +
==Starting from a clean image==
 +
===Installing build packages to MMC/SD===
  
Installing to root filesystem:
+
Issue the following commands to download and install the necessary packages:
    ipkg install gcc libc6-dev binutils libgcc-s-dev
+
  
Installing to MMC/SD/CF:
+
$ ipkg update
    ipkg -d mmc install gcc libc6-dev binutils libgcc-s-dev
+
$ ipkg -d mmc install gcc libc6-dev binutils libgcc-s-dev
  
 +
Next, we need to create links on the root filesystem to the installed packages:
 +
 +
$ ipkg-link mount /media/card
  
 +
The libgcc-s-dev package does not install the proper symbolic links when installed on MMC/SD. Execute the following commands to create the proper link:
  
Please note that lib6c-dev will satisfy a few dependencies if they are not already present:
+
$ rm /media/card/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so
    glibc-extra-nss
+
$ ln -s /lib/libgcc_s.so.1 /media/card/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so
    libthread-db1
+
    linux-libc-headers-dev
+
  
If these packages were installed to a CF, SD, or MMC device, you will need to issue the appropriate 'ipkg-link' commands.
+
===Installing build packages to CF===
  
A symbolic link is broken if not installed to the root filesystem, so it needs to be fixed using the following commands:
+
Issue the following commands to download and install the necessary packages:
  
For MMC/SD Users:
+
$ ipkg update
    rm /media/card/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so
+
$ ipkg -d mmc install gcc libc6-dev binutils libgcc-s-dev
    ln -s /lib/libgcc_s.so.1 /media/card/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so
+
  
For CF Users:
+
Next, we need to create links on the root filesystem to the installed packages:
    rm /media/cf/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so
+
    ln -s /lib/libgcc_s.so.1 /media/cf/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so
+
$ ipkg-link mount /media/cf
 +
 
 +
The libgcc-s-dev package does not install the proper symbolic links when installed on CF. Execute the following commands to create the proper link:
 +
 
 +
$ rm /media/cf/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so
 +
$ ln -s /lib/libgcc_s.so.1 /media/cf/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so
 +
 
 +
===Installing build packages to root filesystem===
 +
 
 +
Issue the following commands to download and install the necessary packages:
 +
 
 +
$ ipkg update
 +
$ ipkg install gcc libc6-dev binutils libgcc-s-dev
 +
 
 +
==Completing setup==
 +
 
 +
All the required packages are installed to compile simpler programs.
 +
 
 +
==Notes==
 +
Please note that lib6c-dev will satisfy a few dependencies:
 +
glibc-extra-nss
 +
libthread-db1
 +
linux-libc-headers-dev

Latest revision as of 15:33, 23 November 2010


Starting from a clean image

Installing build packages to MMC/SD

Issue the following commands to download and install the necessary packages:

$ ipkg update
$ ipkg -d mmc install gcc libc6-dev binutils libgcc-s-dev

Next, we need to create links on the root filesystem to the installed packages:

$ ipkg-link mount /media/card

The libgcc-s-dev package does not install the proper symbolic links when installed on MMC/SD. Execute the following commands to create the proper link:

$ rm /media/card/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so
$ ln -s /lib/libgcc_s.so.1 /media/card/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so

Installing build packages to CF

Issue the following commands to download and install the necessary packages:

$ ipkg update
$ ipkg -d mmc install gcc libc6-dev binutils libgcc-s-dev

Next, we need to create links on the root filesystem to the installed packages:

$ ipkg-link mount /media/cf

The libgcc-s-dev package does not install the proper symbolic links when installed on CF. Execute the following commands to create the proper link:

$ rm /media/cf/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so
$ ln -s /lib/libgcc_s.so.1 /media/cf/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.1.2/libgcc_s.so

Installing build packages to root filesystem

Issue the following commands to download and install the necessary packages:

$ ipkg update
$ ipkg install gcc libc6-dev binutils libgcc-s-dev

Completing setup

All the required packages are installed to compile simpler programs.

Notes

Please note that lib6c-dev will satisfy a few dependencies:

glibc-extra-nss
libthread-db1
linux-libc-headers-dev