Difference between revisions of "Build Environment Ubuntu 8.10"

From Gumstix User Wiki
Jump to: navigation, search
m (Setup Build Environment)
 
(23 intermediate revisions by 17 users not shown)
Line 1: Line 1:
This the current set-up for Ubuntu 8.10 with file modifications as described [http://www.nabble.com/Ubuntu-8.10-and-Open-Embeded-td21136352.html on this thread]. gumstix-oe version is 318.
+
This the current set-up for Ubuntu 8.10 with file modifications as described [http://gumstix.8.x6.nabble.com/Ubuntu-8-10-and-Open-Embeded-td645061.html on this thread]. gumstix-oe version is 318.
  
 
== Setup Build Environment ==
 
== Setup Build Environment ==
 
1) Get Ubuntu linux 8.10, and install it on your computer; you can install a vmware version of Ubuntu too, but it will be slow during the building process.
 
1) Get Ubuntu linux 8.10, and install it on your computer; you can install a vmware version of Ubuntu too, but it will be slow during the building process.
 +
 +
Reconfigure sh to point to bash, not dash:
 +
 +
  sudo dpkg-reconfigure dash
 +
 +
Answer no when asked whether you want to install dash as /bin/sh.
  
 
2) Install (build-essential, help2man, diffstat, texi2html, texinfo, libncurses5-dev, cvs, gawk, python-dev, python-pysqlite2, python-psyco, ckermit, lrzsz, subversion) by using apt-get. i.e:
 
2) Install (build-essential, help2man, diffstat, texi2html, texinfo, libncurses5-dev, cvs, gawk, python-dev, python-pysqlite2, python-psyco, ckermit, lrzsz, subversion) by using apt-get. i.e:
Line 32: Line 38:
 
5) Log out and log in again.
 
5) Log out and log in again.
  
6) Build dbus, it will fail:
+
6) Build the basic image, it will fail with an error in dbus:
  
  bitbake dbus
+
  bitbake gumstix-basic-image
  
 
Edit <code>gumstix/gumstix-oe/tmp/work/i686-linux/dbus-native-1.0.1-r0/dbus-1.0.1/dbus/dbus-sysdeps-unix.c</code>
 
Edit <code>gumstix/gumstix-oe/tmp/work/i686-linux/dbus-native-1.0.1-r0/dbus-1.0.1/dbus/dbus-sysdeps-unix.c</code>
Line 50: Line 56:
 
after the macros.
 
after the macros.
  
7) Build the basic image, it will fail:
+
7) Build the basic image, it will fail with an error in sumversion:
  
 
  bitbake gumstix-basic-image
 
  bitbake gumstix-basic-image
Line 65: Line 71:
  
 
  bitbake gumstix-basic-image
 
  bitbake gumstix-basic-image
 +
 +
9) If everything builds ok, it could be a good idea to modify the dbus-sysdeps-unix.c and sumversion.c files is their respective packages in /usr/share/sources as otherwise everytime you do a rebuild they will be wiped.
  
 
[[Category:How_to_-_general]]
 
[[Category:How_to_-_general]]
 
[[Category:How_to_-_Ubuntu]]
 
[[Category:How_to_-_Ubuntu]]

Latest revision as of 14:39, 1 April 2016

This the current set-up for Ubuntu 8.10 with file modifications as described on this thread. gumstix-oe version is 318.

Setup Build Environment

1) Get Ubuntu linux 8.10, and install it on your computer; you can install a vmware version of Ubuntu too, but it will be slow during the building process.

Reconfigure sh to point to bash, not dash:

 sudo dpkg-reconfigure dash

Answer no when asked whether you want to install dash as /bin/sh.

2) Install (build-essential, help2man, diffstat, texi2html, texinfo, libncurses5-dev, cvs, gawk, python-dev, python-pysqlite2, python-psyco, ckermit, lrzsz, subversion) by using apt-get. i.e:

sudo apt-get install build-essential help2man diffstat texi2html texinfo libncurses5-dev cvs gawk python-dev python-pysqlite2 python-psyco ckermit lrzsz subversion

3) Download the source from svn, caching the source code

mkdir ~/gumstix 
cd ~/gumstix 
svn co https://gumstix.svn.sourceforge.net/svnroot/gumstix/trunk gumstix-oe
cat gumstix-oe/extras/profile >> ~/.bashrc
sudo groupadd oe
sudo usermod -a -G oe YOUR_CURRENT_USERNAME
sudo mkdir /usr/share/sources
sudo chgrp oe /usr/share/sources
sudo chmod 0775 /usr/share/sources
sudo chmod ug+s /usr/share/sources

4) Downgrade to gcc-4.1 and g++-4.1 and change the links:

sudo aptitude install gcc-4.1 g++-4.1
sudo ln -sf /usr/bin/gcc-4.1 /usr/bin/gcc
sudo ln -sf /usr/bin/g++-4.1 /usr/bin/g++

Check the links are correct using:

ls -l /usr/bin/gcc
ls -l /usr/bin/g++

5) Log out and log in again.

6) Build the basic image, it will fail with an error in dbus:

bitbake gumstix-basic-image

Edit gumstix/gumstix-oe/tmp/work/i686-linux/dbus-native-1.0.1-r0/dbus-1.0.1/dbus/dbus-sysdeps-unix.c

Add this struct,

struct ucred { 
   unsigned int pid; 
   unsigned int uid; 
   unsigned int gid; 
};

after the macros.

7) Build the basic image, it will fail with an error in sumversion:

bitbake gumstix-basic-image

Edit gumstix/gumstix-oe/tmp/work/gumstix-custom-verdex-angstrom-linux-gnueabi/gumstix-kernel-2.6.21-r1/linux-2.6.21/scripts/mod/sumversion.c

Add this line,

 #include <limits.h> 

after all of the other includes.

8) Build the basic image again, this time it should work:

bitbake gumstix-basic-image

9) If everything builds ok, it could be a good idea to modify the dbus-sysdeps-unix.c and sumversion.c files is their respective packages in /usr/share/sources as otherwise everytime you do a rebuild they will be wiped.