[oe] Solution for building omap3-console-image using gcc-4.5

Elvis Dowson elvis.dowson at gmail.com
Tue May 1 05:33:11 UTC 2012


Hi,
      I've managed to build the omap3-console-image using gcc-4.5, using the overo-oe overo-2011.03 branch, by following these steps:

Step 01.00: Install the OE metatdata, and check out the overo-2011.03 branch:

$ git clone git://gitorious.org/gumstix-oe/mainline.git
$ git clone git://gitorious.org/gumstix-oe/mainline.git org.openembedded.dev
$ cd org.openembedded.dev
$ git checkout -b overo-2011.03 --track origin/overo-2011.03

The last known working commit id for the OE metadata: 
commit 8b733a34c2dfd7838cd0fa59aa11937a180f18fd
Author: Neil MacMunn <neil at gumstix.com>
Date:   Wed Apr 25 14:53:41 2012 -0700

    obexd_0.34: update checksum values
    
    Signed-off-by: Neil MacMunn <neil at gumstix.com>

 Patch 01: Update checksums for libsamplerate-0.17.tar.gz

From e659c8c56d3d00a20d8d5f67811061cef8e3c7c2 Mon Sep 17 00:00:00 2001
From: Elvis Dowson <elvis.dowson at gmail.com>
Date: Tue, 24 Apr 2012 21:50:14 +0400
Subject: [PATCH 1/3] Update checksums for libsamplerate-0.17.tar.gz

Signed-off-by: Elvis Dowson <elvis.dowson at gmail.com>
---
 recipes/libsamplerate/libsamplerate0_0.1.7.bb |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/recipes/libsamplerate/libsamplerate0_0.1.7.bb b/recipes/libsamplerate/libsamplerate0_0.1.7.bb
index 2a81e4b..7328f47 100644
--- a/recipes/libsamplerate/libsamplerate0_0.1.7.bb
+++ b/recipes/libsamplerate/libsamplerate0_0.1.7.bb
@@ -12,5 +12,5 @@ S = "${WORKDIR}/libsamplerate-${PV}"
 inherit autotools pkgconfig
 
 
-SRC_URI[md5sum] = "6731a81cb0c622c483b28c0d7f90867d"
-SRC_URI[sha256sum] = "78ed5d9ff1bf162c4a078f6a3e7432a537dd2f22dc58872b081fb01156027fcc"
+SRC_URI[md5sum] = "ad093e60ec44f0a60de8e29983ddbc0f"
+SRC_URI[sha256sum] = "e0a646224a0323ac63f56ef009b2d7fee11452a7b8af139b19ae71d2890dbc9c"
-- 
1.7.0.4


 Patch 02: Add libsamplerate0_0.1.8.bb recipe.z

From 6b269dd066291af943d37b09d777f897fac390d3 Mon Sep 17 00:00:00 2001
From: Elvis Dowson <elvis.dowson at gmail.com>
Date: Tue, 24 Apr 2012 21:51:25 +0400
Subject: [PATCH 2/3] Add libsamplerate0_0.1.8.bb recipe.

Signed-off-by: Elvis Dowson <elvis.dowson at gmail.com>
---
 recipes/libsamplerate/libsamplerate0_0.1.8.bb |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)
 create mode 100644 recipes/libsamplerate/libsamplerate0_0.1.8.bb

diff --git a/recipes/libsamplerate/libsamplerate0_0.1.8.bb b/recipes/libsamplerate/libsamplerate0_0.1.8.bb
new file mode 100644
index 0000000..faa368c
--- /dev/null
+++ b/recipes/libsamplerate/libsamplerate0_0.1.8.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "An audio Sample Rate Conversion library"
+SECTION = "libs"
+LICENSE = "GPL libsamplerate"
+
+PR = "r0"
+
+SRC_URI = "http://www.mega-nerd.com/SRC/libsamplerate-${PV}.tar.gz"
+S = "${WORKDIR}/libsamplerate-${PV}"
+
+inherit autotools pkgconfig
+
+
+SRC_URI[md5sum] = "1c7fb25191b4e6e3628d198a66a84f47"
+SRC_URI[sha256sum] = "93b54bdf46d5e6d2354b7034395fe329c222a966790de34520702bb9642f1c06"
-- 
1.7.0.4

 Patch 03: binutils/binutils.inc: Disable treat warnings as errors.

From 13f8d3095a8a0176d41a35f05f237a49ffa84dc1 Mon Sep 17 00:00:00 2001
From: Elvis Dowson <elvis.dowson at gmail.com>
Date: Tue, 1 May 2012 09:19:07 +0400
Subject: [PATCH 3/3] binutils/binutils.inc: Disable treat warnings as errors.

This temporarily fixes an issue with building binutils.

Signed-off-by: Elvis Dowson <elvis.dowson at gmail.com>
---
 recipes/binutils/binutils.inc |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/recipes/binutils/binutils.inc b/recipes/binutils/binutils.inc
index ab9e457..14275db 100644
--- a/recipes/binutils/binutils.inc
+++ b/recipes/binutils/binutils.inc
@@ -41,7 +41,9 @@ S = "${WORKDIR}/binutils-${PV}"
 B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
 
 EXTRA_OECONF = "--program-prefix=${TARGET_PREFIX} \
-		--enable-shared"
+		--enable-shared \
+		--disable-werror \
+		"
 
 # This is necessary due to a bug in the binutils Makefiles
 EXTRA_OEMAKE = "configure-build-libiberty all"
-- 
1.7.0.4

Step 02.00: Set the PREFERRED_VERSION for specific packages that you want to build.

To build using gcc-4.4.1 compiler, edit the local.conf file

#
# Specify the version of gcc that you want to build.
PREFERRED_VERSION_gcc = "4.5"
PREFERRED_VERSION_gcc-cross = "4.5"
PREFERRED_VERSION_gcc-cross-initial = "4.5"
PREFERRED_VERSION_gcc-cross-intermediate = "4.5"

#
# Specify the version of binutils that you want to build.
PREFERRED_VERSION_binutils = "2.21"
PREFERRED_VERSION_binutils-cross = "2.21"

The cross compiler will be located in
${OVEROTOP}/tmp/sysroots/x86_64-linux/usr/armv7a/bin

It is important to specify the correct version of binutils. By default, the overo-2011.03 branch defaults to using binutils-2.18.50.0.7, and you must explicitly specify using binutils-2.21, in order to get gcc-4.5.x to compile properly.

Best regards,

Elvis Dowson







More information about the Openembedded-devel mailing list