Difference between revisions of "Build Environment Ubuntu 8.10"
(add Category:How_to_-_Ubuntu) |
Ashcharles (Talk | contribs) |
||
(26 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:// | + | 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: | ||
sudo apt-get install build-essential help2man diffstat texi2html texinfo libncurses5-dev cvs gawk python-dev python-pysqlite2 python-psyco ckermit lrzsz subversion | 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, | + | 3) Download the source from svn, caching the source code |
mkdir ~/gumstix | mkdir ~/gumstix | ||
cd ~/gumstix | cd ~/gumstix | ||
Line 25: | Line 31: | ||
sudo ln -sf /usr/bin/g++-4.1 /usr/bin/g++ | sudo ln -sf /usr/bin/g++-4.1 /usr/bin/g++ | ||
− | Check | + | Check the links are correct using: |
ls -l /usr/bin/gcc | ls -l /usr/bin/gcc | ||
ls -l /usr/bin/g++ | ls -l /usr/bin/g++ | ||
− | 5) | + | 5) Log out and log in again. |
− | + | ||
− | Add this struct | + | 6) Build the basic image, it will fail with an error in 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> | ||
+ | |||
+ | Add this struct, | ||
<code><pre> | <code><pre> | ||
Line 43: | Line 54: | ||
</pre></code> | </pre></code> | ||
− | after the macros | + | after the macros. |
− | + | 7) Build the basic image, it will fail with an error in sumversion: | |
− | + | ||
− | Add this line | + | bitbake gumstix-basic-image |
+ | |||
+ | Edit <code>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</code> | ||
+ | |||
+ | Add this line, | ||
#include <limits.h> | #include <limits.h> | ||
Line 54: | Line 68: | ||
after all of the other includes. | after all of the other includes. | ||
− | + | 8) Build the basic image again, this time it should work: | |
− | |||
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.