public inbox for gentoo-embedded@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 (unfinished)
@ 2005-04-29 13:49 Heath H Holcomb
  2005-04-29 14:27 ` Ned Ludd
  2005-04-29 16:39 ` Kammi Cazze
  0 siblings, 2 replies; 18+ messages in thread
From: Heath H Holcomb @ 2005-04-29 13:49 UTC (permalink / raw
  To: gentoo-embedded

Version 0.03
Please add, delete, modify. Thanks!


#---------------------------------------------------------------------------------------
# Embedded Gentoo How-To for x86
#
# Commands to setup a Gentoo embedded environment, you must be root.
# These commands are to be run on your developement system, 
# any x86 Gentoo Linux computer will do.  The system should be fast,
# to speed developement.  The target can be any x86 based SBC.  I'm
# using a Geode based SBC.  Latter I'll use a Via based SBC.
#
# version 0.03
# 2005.29.04
#
# Heath Holcomb (heath at bulah.com)
# Ned Ludd (original commands posted)
# Yuri Vasilevshi (contributor)
# Mike George (contributor)
#
# Development RootFS = what you use to build the Embedded RootFS
# Embedded RootFS = rootfs you deploy to the target system
# SBC = single board computer (here it's an x86 based)
#
# References
# http://www.gentoo.org/doc/en/handbook/index.xml
# http://www.epiawiki.org
# http://epia.kalf.org
# Gentoo embedded mailing list (gentoo-embedded@lists.gentoo.org)
#
#
#---------------------------------------------------------------------------------------

# create the Development RootFS
# I use i586 becasue of target is a Geode processor
mkdir -p /opt/i586-gentoo-uclibc-linux/usr/portage

# download the latest stage 1 tarball
wget \ 
http://gentoo.osuosl.org/experimental/x86/embedded/stages/stage1-x86-uclibc-2005.0.tar.bz2

# untar the stage to the Development RootFS
tar -xvjf stage1-x86-uclibc-2005.0.tar.bz2 -C /opt/i586-gentoo-uclibc-linux/

# mount the Development RootFS proc and portage directories
# don't understand this someone please add comments
mount --bind /proc /opt/i586-gentoo-uclibc-linux/proc/
mount --bind /usr/portage /opt/i586-gentoo-uclibc-linux/usr/portage

# copy over DNS information to the Development RootFS
cp /etc/resolv.conf /opt/i586-gentoo-uclibc-linux/etc/resolv.conf

# chroot into the Development RootFS, create new environment, load variables 
into memory
chroot /opt/i586-gentoo-uclibc-linux /bin/bash --login
env-update
source /etc/profile

# modify make.conf file to your liking
nano -w /etc/make.conf
# this is for my target, Geode x86 processor
CHOST="i586-gentoo-linux-uclibc"
CFLAGS="-march=i586 -Os -pipe -fomit-frame-pointer -mmmx"
CXXFLAGS="${CFLAGS}"
FEATURES="buildpkg"

# work around for bug 90306
mknod -m 0444 /dev/random c 1 8
mknod -m 0444 /dev/urandom c 1 9

# start the bootstrip script
cd /usr/portage/scripts
./bootstrap.sh -p -v
./bootstrap.sh

# emerge system
emerge -e system
# fixes a emerge ebuild bug, this should go away soon
emerge python
# continue with the rest of the emerge system
emerge -e system

# modify make.conf and set you USE flags for the target embedded build
# these use flags build a smaller system with no documentation, man or info 
pages installed
# the make-symlinks option of for busybox to automatically create the symlinks 
to it
nano -w /etc/make.conf
USE="make-symlinks nodoc noinfo noman"

# build busybox and uclibc, put into the Embedded RootFS (/Embedded RootFS)
# don't understand exactally how this works, someone please add comments
mkdir /Embedded RootFS
ROOT=/Embedded RootFS emerge busybox uclibc

# emerge other software you need for you embedded target
ROOT=/Embedded RootFS emerge xxxxxxxxx

# install a kernel into Embedded RootFS
ROOT=/Embedded RootFS emerge vanilla-sources
cd /Embedded RootFS/usr/src
ln -s linux-

......... more stuff here ...........
......... install xorg-x11, less than 10MB hopefully
......... install light window manager (blackbox, windowmaker, ???)
......... install very light X11 toolkit (?????)
......... purge to the Embedded RootFS of unwanted files and libaries
......... edit all config files
......... set up the test harddrive on the target SBC 
......... install grub or lilo on the test harddrive on the target SBC
......... transfer Embedded RootFS to the test harddrive on the target SBC 
......... debug system, and rebuild
......... deploy Embedded RootFS from the test harddrive to flash 
......... (DiskOnChip, Compact Flash)
......... tweak, rebuild, redeploy 

-- 
Heath Holcomb
heath@bulah.com
www.bulah.com
-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 (unfinished)
  2005-04-29 13:49 [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 (unfinished) Heath H Holcomb
@ 2005-04-29 14:27 ` Ned Ludd
  2005-04-30 20:04   ` Heath H Holcomb
  2005-04-29 16:39 ` Kammi Cazze
  1 sibling, 1 reply; 18+ messages in thread
From: Ned Ludd @ 2005-04-29 14:27 UTC (permalink / raw
  To: gentoo-embedded


> emerge -e system
> # fixes a emerge ebuild bug, this should go away soon
> emerge python
> # continue with the rest of the emerge system
> emerge -e system

(-e system twice) You should never need todo this.

> 
> # modify make.conf and set you USE flags for the target embedded build
> # these use flags build a smaller system with no documentation, man or info 
> pages installed
> # the make-symlinks option of for busybox to automatically create the symlinks 
> to it


> nano -w /etc/make.conf
> USE="make-symlinks nodoc noinfo noman"

nodoc/noman/noinfo are not alid USE flags. They are FEATURES= and they
are enabled per default in the uclibc profiles.
See: emerge info

make-symlinks is a feature intended for people that are cross compiling
only. If you can run the native binarys which you can cuz it's x86 based
then you should consider doing something like so.

chroot /opt/i586-pc-linux-uclibc /bin/bash --login

ROOT=/dev/shm/rootfs
mount -obind /proc/ ${ROOT}/proc/
chroot ${ROOT} /bin/busybox --install -s
umount ${ROOT}/proc


> # build busybox and uclibc, put into the Embedded RootFS (/Embedded RootFS)
> # don't understand exactally how this works, someone please add comments
> mkdir /Embedded RootFS
> ROOT=/Embedded RootFS emerge busybox uclibc
> 
> # emerge other software you need for you embedded target
> ROOT=/Embedded RootFS emerge xxxxxxxxx

Being that you already enabled FEATURES=buildpkg there is no point in
building xxxxxxx again. Simply use "emerge -K" at this point.

> 
> # install a kernel into Embedded RootFS
> ROOT=/Embedded RootFS emerge vanilla-sources
> cd /Embedded RootFS/usr/src
> ln -s linux-

No this is wrong.

Your kernel building for native-* should be in 
/opt/i586-pc-linux-uclibc/usr/src/linux
vs 
/opt/i586-pc-linux-uclibc/"Embedded RootFS"

-- 
Ned Ludd <solar@gentoo.org>

-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* RE: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 (unfinished)
  2005-04-29 13:49 [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 (unfinished) Heath H Holcomb
  2005-04-29 14:27 ` Ned Ludd
@ 2005-04-29 16:39 ` Kammi Cazze
  2005-05-21 15:19   ` [gentoo-embedded] x86 SBC Gentoo Embedded HowTo michael
  1 sibling, 1 reply; 18+ messages in thread
From: Kammi Cazze @ 2005-04-29 16:39 UTC (permalink / raw
  To: gentoo-embedded

Hi,

first of all i like your id of putting such a howto up. I hope you will get 
much help from the devs. I think the problem is that this project is in full 
development and ways of accompishing things here vary very quickly and are 
always made better and easier to do.

Here is some stuff you could put into it, because it won't change alot in 
the feature ;)

- You could mention something about how to set the timezone on the uclibc 
box. There is a full expl. on this site: 
http://leaf.sourceforge.net/doc/guide/buci-tz.html

>ROOT=/Embedded RootFS emerge busybox uclibc

You could also put baselayout-lite in it. I don't know what the status is by 
now (ask iggy)!

As on such a system devfs or udef is mostly unwanted, you will have to 
create your /dev nodes manualy, because baselayout-lite only makes the most 
neaded once, like /dev/hd* and /dev/sd*


Pierre Cassimans

>From: Heath H Holcomb <heath@bulah.com>
>Reply-To: gentoo-embedded@lists.gentoo.org
>To: gentoo-embedded@lists.gentoo.org
>Subject: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 
>(unfinished)
>Date: Fri, 29 Apr 2005 08:49:21 -0500
>
>Version 0.03
>Please add, delete, modify. Thanks!
>
>
>#---------------------------------------------------------------------------------------
># Embedded Gentoo How-To for x86
>#
># Commands to setup a Gentoo embedded environment, you must be root.
># These commands are to be run on your developement system,
># any x86 Gentoo Linux computer will do.  The system should be fast,
># to speed developement.  The target can be any x86 based SBC.  I'm
># using a Geode based SBC.  Latter I'll use a Via based SBC.
>#
># version 0.03
># 2005.29.04
>#
># Heath Holcomb (heath at bulah.com)
># Ned Ludd (original commands posted)
># Yuri Vasilevshi (contributor)
># Mike George (contributor)
>#
># Development RootFS = what you use to build the Embedded RootFS
># Embedded RootFS = rootfs you deploy to the target system
># SBC = single board computer (here it's an x86 based)
>#
># References
># http://www.gentoo.org/doc/en/handbook/index.xml
># http://www.epiawiki.org
># http://epia.kalf.org
># Gentoo embedded mailing list (gentoo-embedded@lists.gentoo.org)
>#
>#
>#---------------------------------------------------------------------------------------
>
># create the Development RootFS
># I use i586 becasue of target is a Geode processor
>mkdir -p /opt/i586-gentoo-uclibc-linux/usr/portage
>
># download the latest stage 1 tarball
>wget \
>http://gentoo.osuosl.org/experimental/x86/embedded/stages/stage1-x86-uclibc-2005.0.tar.bz2
>
># untar the stage to the Development RootFS
>tar -xvjf stage1-x86-uclibc-2005.0.tar.bz2 -C 
>/opt/i586-gentoo-uclibc-linux/
>
># mount the Development RootFS proc and portage directories
># don't understand this someone please add comments
>mount --bind /proc /opt/i586-gentoo-uclibc-linux/proc/
>mount --bind /usr/portage /opt/i586-gentoo-uclibc-linux/usr/portage
>
># copy over DNS information to the Development RootFS
>cp /etc/resolv.conf /opt/i586-gentoo-uclibc-linux/etc/resolv.conf
>
># chroot into the Development RootFS, create new environment, load 
>variables
>into memory
>chroot /opt/i586-gentoo-uclibc-linux /bin/bash --login
>env-update
>source /etc/profile
>
># modify make.conf file to your liking
>nano -w /etc/make.conf
># this is for my target, Geode x86 processor
>CHOST="i586-gentoo-linux-uclibc"
>CFLAGS="-march=i586 -Os -pipe -fomit-frame-pointer -mmmx"
>CXXFLAGS="${CFLAGS}"
>FEATURES="buildpkg"
>
># work around for bug 90306
>mknod -m 0444 /dev/random c 1 8
>mknod -m 0444 /dev/urandom c 1 9
>
># start the bootstrip script
>cd /usr/portage/scripts
>./bootstrap.sh -p -v
>./bootstrap.sh
>
># emerge system
>emerge -e system
># fixes a emerge ebuild bug, this should go away soon
>emerge python
># continue with the rest of the emerge system
>emerge -e system
>
># modify make.conf and set you USE flags for the target embedded build
># these use flags build a smaller system with no documentation, man or info
>pages installed
># the make-symlinks option of for busybox to automatically create the 
>symlinks
>to it
>nano -w /etc/make.conf
>USE="make-symlinks nodoc noinfo noman"
>
># build busybox and uclibc, put into the Embedded RootFS (/Embedded RootFS)
># don't understand exactally how this works, someone please add comments
>mkdir /Embedded RootFS
>ROOT=/Embedded RootFS emerge busybox uclibc
>
># emerge other software you need for you embedded target
>ROOT=/Embedded RootFS emerge xxxxxxxxx
>
># install a kernel into Embedded RootFS
>ROOT=/Embedded RootFS emerge vanilla-sources
>cd /Embedded RootFS/usr/src
>ln -s linux-
>
>......... more stuff here ...........
>......... install xorg-x11, less than 10MB hopefully
>......... install light window manager (blackbox, windowmaker, ???)
>......... install very light X11 toolkit (?????)
>......... purge to the Embedded RootFS of unwanted files and libaries
>......... edit all config files
>......... set up the test harddrive on the target SBC
>......... install grub or lilo on the test harddrive on the target SBC
>......... transfer Embedded RootFS to the test harddrive on the target SBC
>......... debug system, and rebuild
>......... deploy Embedded RootFS from the test harddrive to flash
>......... (DiskOnChip, Compact Flash)
>......... tweak, rebuild, redeploy
>
>--
>Heath Holcomb
>heath@bulah.com
>www.bulah.com
>--
>gentoo-embedded@gentoo.org mailing list
>

_________________________________________________________________


-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 (unfinished)
  2005-04-29 14:27 ` Ned Ludd
@ 2005-04-30 20:04   ` Heath H Holcomb
  2005-04-30 21:41     ` Ned Ludd
  2005-05-02  4:14     ` Yuri Vasilevski
  0 siblings, 2 replies; 18+ messages in thread
From: Heath H Holcomb @ 2005-04-30 20:04 UTC (permalink / raw
  To: gentoo-embedded

On 04 29 2005 09:27 am, Ned Ludd wrote:
> > emerge -e system
> > # fixes a emerge ebuild bug, this should go away soon
> > emerge python
> > # continue with the rest of the emerge system
> > emerge -e system

This was just a for a work around for a bug I encountered.

> (-e system twice) You should never need todo this.
>
> > # modify make.conf and set you USE flags for the target embedded build
> > # these use flags build a smaller system with no documentation, man or
> > info pages installed
> > # the make-symlinks option of for busybox to automatically create the
> > symlinks to it
> >
> >
> > nano -w /etc/make.conf
> > USE="make-symlinks nodoc noinfo noman"
>
> nodoc/noman/noinfo are not alid USE flags. They are FEATURES= and they
> are enabled per default in the uclibc profiles.
> See: emerge info

I'll fix this.

> make-symlinks is a feature intended for people that are cross compiling
> only. If you can run the native binarys which you can cuz it's x86 based
> then you should consider doing something like so.
>
> chroot /opt/i586-pc-linux-uclibc /bin/bash --login
>
> ROOT=/dev/shm/rootfs
> mount -obind /proc/ ${ROOT}/proc/
> chroot ${ROOT} /bin/busybox --install -s
> umount ${ROOT}/proc

Should I not use busybox?  I don't understand why I should not use the use 
flag "make-symlinks" for busybox.  If I emerge busybox without the that use 
flag it don't create the smylinks for all the commands, it only install the 
binary busybox.

> > # build busybox and uclibc, put into the Embedded RootFS (/Embedded
> > RootFS) # don't understand exactally how this works, someone please add
> > comments mkdir /Embedded RootFS
> > ROOT=/Embedded RootFS emerge busybox uclibc
> >
> > # emerge other software you need for you embedded target
> > ROOT=/Embedded RootFS emerge xxxxxxxxx
>
> Being that you already enabled FEATURES=buildpkg there is no point in
> building xxxxxxx again. Simply use "emerge -K" at this point.

Do you mean that I should emerge mplayer (for example) in my development 
rootfs (with buildpkq use flag), and just emerge -k mplayer into my embedded 
rootfs?

> > # install a kernel into Embedded RootFS
> > ROOT=/Embedded RootFS emerge vanilla-sources
> > cd /Embedded RootFS/usr/src
> > ln -s linux-
>
> No this is wrong.
>
> Your kernel building for native-* should be in
> /opt/i586-pc-linux-uclibc/usr/src/linux
> vs
> /opt/i586-pc-linux-uclibc/"Embedded RootFS"

Ok, I understand.  Emerge, configure, and make the kernel in the development 
rootfs and this copy it to my embedded rootfs boot directory.


> --
> Ned Ludd <solar@gentoo.org>


Thanks,

-- 
Heath Holcomb
heath@bulah.com
www.bulah.com
-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 (unfinished)
  2005-04-30 20:04   ` Heath H Holcomb
@ 2005-04-30 21:41     ` Ned Ludd
  2005-05-02  4:14     ` Yuri Vasilevski
  1 sibling, 0 replies; 18+ messages in thread
From: Ned Ludd @ 2005-04-30 21:41 UTC (permalink / raw
  To: gentoo-embedded

[snip]

> > make-symlinks is a feature intended for people that are cross compiling
> > only. If you can run the native binarys which you can cuz it's x86 based
> > then you should consider doing something like so.
> >
> > chroot /opt/i586-pc-linux-uclibc /bin/bash --login
> >
> > ROOT=/dev/shm/rootfs
> > mount -obind /proc/ ${ROOT}/proc/
> > chroot ${ROOT} /bin/busybox --install -s
> > umount ${ROOT}/proc
> 
> Should I not use busybox?  I don't understand why I should not use the use 
> flag "make-symlinks" for busybox.  If I emerge busybox without the that use 
> flag it don't create the smylinks for all the commands, it only install the 
> binary busybox.

This is what I mean.
Notice how you only got the symlinks in your development environment vs
all the ones the busybox supports your embedded rootfs run-time
environment ? chrooting into your rootfs at some point and running the
above command helps because ensure you have a symlink for every given
applet the busybox was built to support.

> > > # build busybox and uclibc, put into the Embedded RootFS (/Embedded
> > > RootFS) # don't understand exactally how this works, someone please add
> > > comments mkdir /Embedded RootFS
> > > ROOT=/Embedded RootFS emerge busybox uclibc
> > >
> > > # emerge other software you need for you embedded target
> > > ROOT=/Embedded RootFS emerge xxxxxxxxx
> >
> > Being that you already enabled FEATURES=buildpkg there is no point in
> > building xxxxxxx again. Simply use "emerge -K" at this point.
> 
> Do you mean that I should emerge mplayer (for example) in my development 
> rootfs (with buildpkq use flag), and just emerge -k mplayer into my embedded 
> rootfs?

Yes you want to really only install your built packages into the rootfs
vs building your packages in it to ensure no extra cruft is left behind.
Thats why I noted the -K vs -k flags.


> > > # install a kernel into Embedded RootFS
> > > ROOT=/Embedded RootFS emerge vanilla-sources
> > > cd /Embedded RootFS/usr/src
> > > ln -s linux-
> >
> > No this is wrong.
> >
> > Your kernel building for native-* should be in
> > /opt/i586-pc-linux-uclibc/usr/src/linux
> > vs
> > /opt/i586-pc-linux-uclibc/"Embedded RootFS"
> 
> Ok, I understand.  Emerge, configure, and make the kernel in the development 
> rootfs and this copy it to my embedded rootfs boot directory.

correct.

-- 
Ned Ludd <solar@gentoo.org>

-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 (unfinished)
  2005-04-30 20:04   ` Heath H Holcomb
  2005-04-30 21:41     ` Ned Ludd
@ 2005-05-02  4:14     ` Yuri Vasilevski
  2005-06-09 13:25       ` Heath H Holcomb
  1 sibling, 1 reply; 18+ messages in thread
From: Yuri Vasilevski @ 2005-05-02  4:14 UTC (permalink / raw
  To: gentoo-embedded

Hi,

On Sat, 30 Apr 2005 15:04:28 -0500
Heath H Holcomb <heath@bulah.com> wrote:
> > > emerge -e system
> > > # fixes a emerge ebuild bug, this should go away soon
> > > emerge python
> > > # continue with the rest of the emerge system
> > > emerge -e system
> 
> This was just a for a work around for a bug I encountered.

Could you please provide more info about this bug?
Is it related to http://bugs.gentoo.org/show_bug.cgi?id=91024 ?
(This one is the only thing i found on Gnetoo's Bugzilla
that looks lake a god candidate for the bug you have.)

Yuri.

-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* RE: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo
  2005-04-29 16:39 ` Kammi Cazze
@ 2005-05-21 15:19   ` michael
  2005-05-22  5:46     ` Heath H Holcomb
  0 siblings, 1 reply; 18+ messages in thread
From: michael @ 2005-05-21 15:19 UTC (permalink / raw
  To: gentoo-embedded

I agree with Kammi - this is an incredibly useful howto.

I'm also getting ready to install gentoo on my epia board, I'm using the
ME6000. A major difference, though, is that I want to create the system
on a Compact Flash card.

I've already done bootable CF systems using a mix of all sort of notes
I've found on the web. As a result, I have a mix of things I don't
understand and I'm sure some things I don't need. This time I'd like to
do it from scratch so that I understand every step.

In the past I've built the filesystem on my desktop, then compressed it
using cramfs, which gets written to the CF card. I think I'll do the
same this time, but I'd be interested to hear what you all might
recommend.

Does there exist a howto that describes this whole process? If not, would 
others find it useful?

Any tips, pointers, and suggestions welcome.

Michael


On Fri, 29 Apr 2005, Kammi Cazze wrote:

> Hi,
>
> first of all i like your id of putting such a howto up. I hope you will get 
> much help from the devs. I think the problem is that this project is in full 
> development and ways of accompishing things here vary very quickly and are 
> always made better and easier to do.
>
> Here is some stuff you could put into it, because it won't change alot in the 
> feature ;)
>
> - You could mention something about how to set the timezone on the uclibc 
> box. There is a full expl. on this site: 
> http://leaf.sourceforge.net/doc/guide/buci-tz.html
>
>> ROOT=/Embedded RootFS emerge busybox uclibc
>
> You could also put baselayout-lite in it. I don't know what the status is by 
> now (ask iggy)!
>
> As on such a system devfs or udef is mostly unwanted, you will have to create 
> your /dev nodes manualy, because baselayout-lite only makes the most neaded 
> once, like /dev/hd* and /dev/sd*
>
>
> Pierre Cassimans
>
>> From: Heath H Holcomb <heath@bulah.com>
>> Reply-To: gentoo-embedded@lists.gentoo.org
>> To: gentoo-embedded@lists.gentoo.org
>> Subject: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 
>> (unfinished)
>> Date: Fri, 29 Apr 2005 08:49:21 -0500
>> 
>> Version 0.03
>> Please add, delete, modify. Thanks!
>> 
>> 
>>> ---------------------------------------------------------------------------------------
>>> Embedded Gentoo How-To for x86
>>> 
>>> Commands to setup a Gentoo embedded environment, you must be root.
>>> These commands are to be run on your developement system,
>>> any x86 Gentoo Linux computer will do.  The system should be fast,
>>> to speed developement.  The target can be any x86 based SBC.  I'm
>>> using a Geode based SBC.  Latter I'll use a Via based SBC.
>>> 
>>> version 0.03
>>> 2005.29.04
>>> 
>>> Heath Holcomb (heath at bulah.com)
>>> Ned Ludd (original commands posted)
>>> Yuri Vasilevshi (contributor)
>>> Mike George (contributor)
>>> 
>>> Development RootFS = what you use to build the Embedded RootFS
>>> Embedded RootFS = rootfs you deploy to the target system
>>> SBC = single board computer (here it's an x86 based)
>>> 
>>> References
>>>> //www.gentoo.org/doc/en/handbook/index.xml
>>>> //www.epiawiki.org
>>>> //epia.kalf.org
>>> Gentoo embedded mailing list (gentoo-embedded@lists.gentoo.org)
>>> 
>>> 
>>> ---------------------------------------------------------------------------------------
>> 
>>> create the Development RootFS
>>> I use i586 becasue of target is a Geode processor
>> mkdir -p /opt/i586-gentoo-uclibc-linux/usr/portage
>> 
>> # download the latest stage 1 tarball
>> wget \
>> http://gentoo.osuosl.org/experimental/x86/embedded/stages/stage1-x86-uclibc-2005.0.tar.bz2
>> 
>> # untar the stage to the Development RootFS
>> tar -xvjf stage1-x86-uclibc-2005.0.tar.bz2 -C 
>> /opt/i586-gentoo-uclibc-linux/
>> 
>>> mount the Development RootFS proc and portage directories
>>> don't understand this someone please add comments
>> mount --bind /proc /opt/i586-gentoo-uclibc-linux/proc/
>> mount --bind /usr/portage /opt/i586-gentoo-uclibc-linux/usr/portage
>> 
>> # copy over DNS information to the Development RootFS
>> cp /etc/resolv.conf /opt/i586-gentoo-uclibc-linux/etc/resolv.conf
>> 
>> # chroot into the Development RootFS, create new environment, load 
>> variables
>> into memory
>> chroot /opt/i586-gentoo-uclibc-linux /bin/bash --login
>> env-update
>> source /etc/profile
>> 
>> # modify make.conf file to your liking
>> nano -w /etc/make.conf
>> # this is for my target, Geode x86 processor
>> CHOST="i586-gentoo-linux-uclibc"
>> CFLAGS="-march=i586 -Os -pipe -fomit-frame-pointer -mmmx"
>> CXXFLAGS="${CFLAGS}"
>> FEATURES="buildpkg"
>> 
>> # work around for bug 90306
>> mknod -m 0444 /dev/random c 1 8
>> mknod -m 0444 /dev/urandom c 1 9
>> 
>> # start the bootstrip script
>> cd /usr/portage/scripts
>> ./bootstrap.sh -p -v
>> ./bootstrap.sh
>> 
>> # emerge system
>> emerge -e system
>> # fixes a emerge ebuild bug, this should go away soon
>> emerge python
>> # continue with the rest of the emerge system
>> emerge -e system
>> 
>>> modify make.conf and set you USE flags for the target embedded build
>>> these use flags build a smaller system with no documentation, man or 
>>> info
>> pages installed
>> # the make-symlinks option of for busybox to automatically create the 
>> symlinks
>> to it
>> nano -w /etc/make.conf
>> USE="make-symlinks nodoc noinfo noman"
>> 
>>> build busybox and uclibc, put into the Embedded RootFS (/Embedded 
>>> RootFS)
>>> don't understand exactally how this works, someone please add comments
>> mkdir /Embedded RootFS
>> ROOT=/Embedded RootFS emerge busybox uclibc
>> 
>> # emerge other software you need for you embedded target
>> ROOT=/Embedded RootFS emerge xxxxxxxxx
>> 
>> # install a kernel into Embedded RootFS
>> ROOT=/Embedded RootFS emerge vanilla-sources
>> cd /Embedded RootFS/usr/src
>> ln -s linux-
>> 
>> ......... more stuff here ...........
>> ......... install xorg-x11, less than 10MB hopefully
>> ......... install light window manager (blackbox, windowmaker, ???)
>> ......... install very light X11 toolkit (?????)
>> ......... purge to the Embedded RootFS of unwanted files and libaries
>> ......... edit all config files
>> ......... set up the test harddrive on the target SBC
>> ......... install grub or lilo on the test harddrive on the target SBC
>> ......... transfer Embedded RootFS to the test harddrive on the target SBC
>> ......... debug system, and rebuild
>> ......... deploy Embedded RootFS from the test harddrive to flash
>> ......... (DiskOnChip, Compact Flash)
>> ......... tweak, rebuild, redeploy
>> 
>> --
>> Heath Holcomb
>> heath@bulah.com
>> www.bulah.com
>> --
>> gentoo-embedded@gentoo.org mailing list
>> 
>
> _________________________________________________________________
>
>
> -- 
> gentoo-embedded@gentoo.org mailing list
>
>
>
-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo
  2005-05-22  5:46     ` Heath H Holcomb
@ 2005-05-21 18:07       ` michael
  2005-05-23  3:26         ` Heath H Holcomb
  0 siblings, 1 reply; 18+ messages in thread
From: michael @ 2005-05-21 18:07 UTC (permalink / raw
  To: gentoo-embedded

Thanks for writing back, Heath, and thanks for your answers.

Is the latest version of you howto available on the web somewhere? If
not, can you send me the latest version?


Thanks,
Michael


On Sun, 22 May 2005, Heath H Holcomb wrote:

> I have always planned on using Compact Flash as my storage medium.  You don't
> have to us any compression if your compact flash size is large enough.  You
> just have to partition, mount / read only, no swap, and write you embedded
> application to only mount and write to the compact flash when data is really
> needed (you can use a separate partition from /).
>
> Flash devices have a write limit usually between 100,000 to 300,000 times,
> while hard drive writes are measured in millions or billions.  The higher end
> compact flash have something that is called ware leveling, which "moves" the
> memory cells around in the compact flash so writes are distributed through
> out the entire size of the compact flash instead of the exact same location
> every time.  This was what made DiskOnChip the preferred choice a few years
> ago when they had it and compact flash did not.  But most non-cheap compact
> flash's has were leveling today.
>
> -- 
> Heath Holcomb
> heath at bulah.com
> www.bulah.com
>
>
> On 05 21 2005 10:19 am, michael@michaelshiloh.com wrote:
>> I agree with Kammi - this is an incredibly useful howto.
>>
>> I'm also getting ready to install gentoo on my epia board, I'm using the
>> ME6000. A major difference, though, is that I want to create the system
>> on a Compact Flash card.
>>
>> I've already done bootable CF systems using a mix of all sort of notes
>> I've found on the web. As a result, I have a mix of things I don't
>> understand and I'm sure some things I don't need. This time I'd like to
>> do it from scratch so that I understand every step.
>>
>> In the past I've built the filesystem on my desktop, then compressed it
>> using cramfs, which gets written to the CF card. I think I'll do the
>> same this time, but I'd be interested to hear what you all might
>> recommend.
>>
>> Does there exist a howto that describes this whole process? If not, would
>> others find it useful?
>>
>> Any tips, pointers, and suggestions welcome.
>>
>> Michael
>>
>> On Fri, 29 Apr 2005, Kammi Cazze wrote:
>>> Hi,
>>>
>>> first of all i like your id of putting such a howto up. I hope you will
>>> get much help from the devs. I think the problem is that this project is
>>> in full development and ways of accompishing things here vary very
>>> quickly and are always made better and easier to do.
>>>
>>> Here is some stuff you could put into it, because it won't change alot in
>>> the feature ;)
>>>
>>> - You could mention something about how to set the timezone on the uclibc
>>> box. There is a full expl. on this site:
>>> http://leaf.sourceforge.net/doc/guide/buci-tz.html
>>>
>>>> ROOT=/Embedded RootFS emerge busybox uclibc
>>>
>>> You could also put baselayout-lite in it. I don't know what the status is
>>> by now (ask iggy)!
>>>
>>> As on such a system devfs or udef is mostly unwanted, you will have to
>>> create your /dev nodes manualy, because baselayout-lite only makes the
>>> most neaded once, like /dev/hd* and /dev/sd*
>>>
>>>
>>> Pierre Cassimans
>>>
>>>> From: Heath H Holcomb <heath@bulah.com>
>>>> Reply-To: gentoo-embedded@lists.gentoo.org
>>>> To: gentoo-embedded@lists.gentoo.org
>>>> Subject: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03
>>>> (unfinished)
>>>> Date: Fri, 29 Apr 2005 08:49:21 -0500
>>>>
>>>> Version 0.03
>>>> Please add, delete, modify. Thanks!
>>>>
>>>>> -----------------------------------------------------------------------
>>>>> ---------------- Embedded Gentoo How-To for x86
>>>>>
>>>>> Commands to setup a Gentoo embedded environment, you must be root.
>>>>> These commands are to be run on your developement system,
>>>>> any x86 Gentoo Linux computer will do.  The system should be fast,
>>>>> to speed developement.  The target can be any x86 based SBC.  I'm
>>>>> using a Geode based SBC.  Latter I'll use a Via based SBC.
>>>>>
>>>>> version 0.03
>>>>> 2005.29.04
>>>>>
>>>>> Heath Holcomb (heath at bulah.com)
>>>>> Ned Ludd (original commands posted)
>>>>> Yuri Vasilevshi (contributor)
>>>>> Mike George (contributor)
>>>>>
>>>>> Development RootFS = what you use to build the Embedded RootFS
>>>>> Embedded RootFS = rootfs you deploy to the target system
>>>>> SBC = single board computer (here it's an x86 based)
>>>>>
>>>>> References
>>>>>
>>>>>> //www.gentoo.org/doc/en/handbook/index.xml
>>>>>> //www.epiawiki.org
>>>>>> //epia.kalf.org
>>>>>
>>>>> Gentoo embedded mailing list (gentoo-embedded@lists.gentoo.org)
>>>>>
>>>>>
>>>>> -----------------------------------------------------------------------
>>>>> ----------------
>>>>>
>>>>> create the Development RootFS
>>>>> I use i586 becasue of target is a Geode processor
>>>>
>>>> mkdir -p /opt/i586-gentoo-uclibc-linux/usr/portage
>>>>
>>>> # download the latest stage 1 tarball
>>>> wget \
>>>> http://gentoo.osuosl.org/experimental/x86/embedded/stages/stage1-x86-ucl
>>>> ibc-2005.0.tar.bz2
>>>>
>>>> # untar the stage to the Development RootFS
>>>> tar -xvjf stage1-x86-uclibc-2005.0.tar.bz2 -C
>>>> /opt/i586-gentoo-uclibc-linux/
>>>>
>>>>> mount the Development RootFS proc and portage directories
>>>>> don't understand this someone please add comments
>>>>
>>>> mount --bind /proc /opt/i586-gentoo-uclibc-linux/proc/
>>>> mount --bind /usr/portage /opt/i586-gentoo-uclibc-linux/usr/portage
>>>>
>>>> # copy over DNS information to the Development RootFS
>>>> cp /etc/resolv.conf /opt/i586-gentoo-uclibc-linux/etc/resolv.conf
>>>>
>>>> # chroot into the Development RootFS, create new environment, load
>>>> variables
>>>> into memory
>>>> chroot /opt/i586-gentoo-uclibc-linux /bin/bash --login
>>>> env-update
>>>> source /etc/profile
>>>>
>>>> # modify make.conf file to your liking
>>>> nano -w /etc/make.conf
>>>> # this is for my target, Geode x86 processor
>>>> CHOST="i586-gentoo-linux-uclibc"
>>>> CFLAGS="-march=i586 -Os -pipe -fomit-frame-pointer -mmmx"
>>>> CXXFLAGS="${CFLAGS}"
>>>> FEATURES="buildpkg"
>>>>
>>>> # work around for bug 90306
>>>> mknod -m 0444 /dev/random c 1 8
>>>> mknod -m 0444 /dev/urandom c 1 9
>>>>
>>>> # start the bootstrip script
>>>> cd /usr/portage/scripts
>>>> ./bootstrap.sh -p -v
>>>> ./bootstrap.sh
>>>>
>>>> # emerge system
>>>> emerge -e system
>>>> # fixes a emerge ebuild bug, this should go away soon
>>>> emerge python
>>>> # continue with the rest of the emerge system
>>>> emerge -e system
>>>>
>>>>> modify make.conf and set you USE flags for the target embedded build
>>>>> these use flags build a smaller system with no documentation, man or
>>>>> info
>>>>
>>>> pages installed
>>>> # the make-symlinks option of for busybox to automatically create the
>>>> symlinks
>>>> to it
>>>> nano -w /etc/make.conf
>>>> USE="make-symlinks nodoc noinfo noman"
>>>>
>>>>> build busybox and uclibc, put into the Embedded RootFS (/Embedded
>>>>> RootFS)
>>>>> don't understand exactally how this works, someone please add comments
>>>>
>>>> mkdir /Embedded RootFS
>>>> ROOT=/Embedded RootFS emerge busybox uclibc
>>>>
>>>> # emerge other software you need for you embedded target
>>>> ROOT=/Embedded RootFS emerge xxxxxxxxx
>>>>
>>>> # install a kernel into Embedded RootFS
>>>> ROOT=/Embedded RootFS emerge vanilla-sources
>>>> cd /Embedded RootFS/usr/src
>>>> ln -s linux-
>>>>
>>>> ......... more stuff here ...........
>>>> ......... install xorg-x11, less than 10MB hopefully
>>>> ......... install light window manager (blackbox, windowmaker, ???)
>>>> ......... install very light X11 toolkit (?????)
>>>> ......... purge to the Embedded RootFS of unwanted files and libaries
>>>> ......... edit all config files
>>>> ......... set up the test harddrive on the target SBC
>>>> ......... install grub or lilo on the test harddrive on the target SBC
>>>> ......... transfer Embedded RootFS to the test harddrive on the target
>>>> SBC ......... debug system, and rebuild
>>>> ......... deploy Embedded RootFS from the test harddrive to flash
>>>> ......... (DiskOnChip, Compact Flash)
>>>> ......... tweak, rebuild, redeploy
>>>>
>>>> --
>>>> Heath Holcomb
>>>> heath@bulah.com
>>>> www.bulah.com
>>>> --
>>>> gentoo-embedded@gentoo.org mailing list
>>>
>>> _________________________________________________________________
>>>
>>>
>>> --
>>> gentoo-embedded@gentoo.org mailing list
>
> -- 
> gentoo-embedded@gentoo.org mailing list
>
>
-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo
  2005-05-21 15:19   ` [gentoo-embedded] x86 SBC Gentoo Embedded HowTo michael
@ 2005-05-22  5:46     ` Heath H Holcomb
  2005-05-21 18:07       ` michael
  0 siblings, 1 reply; 18+ messages in thread
From: Heath H Holcomb @ 2005-05-22  5:46 UTC (permalink / raw
  To: gentoo-embedded

I have always planned on using Compact Flash as my storage medium.  You don't 
have to us any compression if your compact flash size is large enough.  You 
just have to partition, mount / read only, no swap, and write you embedded 
application to only mount and write to the compact flash when data is really 
needed (you can use a separate partition from /).  

Flash devices have a write limit usually between 100,000 to 300,000 times, 
while hard drive writes are measured in millions or billions.  The higher end 
compact flash have something that is called ware leveling, which "moves" the 
memory cells around in the compact flash so writes are distributed through 
out the entire size of the compact flash instead of the exact same location 
every time.  This was what made DiskOnChip the preferred choice a few years 
ago when they had it and compact flash did not.  But most non-cheap compact 
flash's has were leveling today.

-- 
Heath Holcomb
heath at bulah.com
www.bulah.com


On 05 21 2005 10:19 am, michael@michaelshiloh.com wrote:
> I agree with Kammi - this is an incredibly useful howto.
>
> I'm also getting ready to install gentoo on my epia board, I'm using the
> ME6000. A major difference, though, is that I want to create the system
> on a Compact Flash card.
>
> I've already done bootable CF systems using a mix of all sort of notes
> I've found on the web. As a result, I have a mix of things I don't
> understand and I'm sure some things I don't need. This time I'd like to
> do it from scratch so that I understand every step.
>
> In the past I've built the filesystem on my desktop, then compressed it
> using cramfs, which gets written to the CF card. I think I'll do the
> same this time, but I'd be interested to hear what you all might
> recommend.
>
> Does there exist a howto that describes this whole process? If not, would
> others find it useful?
>
> Any tips, pointers, and suggestions welcome.
>
> Michael
>
> On Fri, 29 Apr 2005, Kammi Cazze wrote:
> > Hi,
> >
> > first of all i like your id of putting such a howto up. I hope you will
> > get much help from the devs. I think the problem is that this project is
> > in full development and ways of accompishing things here vary very
> > quickly and are always made better and easier to do.
> >
> > Here is some stuff you could put into it, because it won't change alot in
> > the feature ;)
> >
> > - You could mention something about how to set the timezone on the uclibc
> > box. There is a full expl. on this site:
> > http://leaf.sourceforge.net/doc/guide/buci-tz.html
> >
> >> ROOT=/Embedded RootFS emerge busybox uclibc
> >
> > You could also put baselayout-lite in it. I don't know what the status is
> > by now (ask iggy)!
> >
> > As on such a system devfs or udef is mostly unwanted, you will have to
> > create your /dev nodes manualy, because baselayout-lite only makes the
> > most neaded once, like /dev/hd* and /dev/sd*
> >
> >
> > Pierre Cassimans
> >
> >> From: Heath H Holcomb <heath@bulah.com>
> >> Reply-To: gentoo-embedded@lists.gentoo.org
> >> To: gentoo-embedded@lists.gentoo.org
> >> Subject: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03
> >> (unfinished)
> >> Date: Fri, 29 Apr 2005 08:49:21 -0500
> >>
> >> Version 0.03
> >> Please add, delete, modify. Thanks!
> >>
> >>> -----------------------------------------------------------------------
> >>>---------------- Embedded Gentoo How-To for x86
> >>>
> >>> Commands to setup a Gentoo embedded environment, you must be root.
> >>> These commands are to be run on your developement system,
> >>> any x86 Gentoo Linux computer will do.  The system should be fast,
> >>> to speed developement.  The target can be any x86 based SBC.  I'm
> >>> using a Geode based SBC.  Latter I'll use a Via based SBC.
> >>>
> >>> version 0.03
> >>> 2005.29.04
> >>>
> >>> Heath Holcomb (heath at bulah.com)
> >>> Ned Ludd (original commands posted)
> >>> Yuri Vasilevshi (contributor)
> >>> Mike George (contributor)
> >>>
> >>> Development RootFS = what you use to build the Embedded RootFS
> >>> Embedded RootFS = rootfs you deploy to the target system
> >>> SBC = single board computer (here it's an x86 based)
> >>>
> >>> References
> >>>
> >>>> //www.gentoo.org/doc/en/handbook/index.xml
> >>>> //www.epiawiki.org
> >>>> //epia.kalf.org
> >>>
> >>> Gentoo embedded mailing list (gentoo-embedded@lists.gentoo.org)
> >>>
> >>>
> >>> -----------------------------------------------------------------------
> >>>----------------
> >>>
> >>> create the Development RootFS
> >>> I use i586 becasue of target is a Geode processor
> >>
> >> mkdir -p /opt/i586-gentoo-uclibc-linux/usr/portage
> >>
> >> # download the latest stage 1 tarball
> >> wget \
> >> http://gentoo.osuosl.org/experimental/x86/embedded/stages/stage1-x86-ucl
> >>ibc-2005.0.tar.bz2
> >>
> >> # untar the stage to the Development RootFS
> >> tar -xvjf stage1-x86-uclibc-2005.0.tar.bz2 -C
> >> /opt/i586-gentoo-uclibc-linux/
> >>
> >>> mount the Development RootFS proc and portage directories
> >>> don't understand this someone please add comments
> >>
> >> mount --bind /proc /opt/i586-gentoo-uclibc-linux/proc/
> >> mount --bind /usr/portage /opt/i586-gentoo-uclibc-linux/usr/portage
> >>
> >> # copy over DNS information to the Development RootFS
> >> cp /etc/resolv.conf /opt/i586-gentoo-uclibc-linux/etc/resolv.conf
> >>
> >> # chroot into the Development RootFS, create new environment, load
> >> variables
> >> into memory
> >> chroot /opt/i586-gentoo-uclibc-linux /bin/bash --login
> >> env-update
> >> source /etc/profile
> >>
> >> # modify make.conf file to your liking
> >> nano -w /etc/make.conf
> >> # this is for my target, Geode x86 processor
> >> CHOST="i586-gentoo-linux-uclibc"
> >> CFLAGS="-march=i586 -Os -pipe -fomit-frame-pointer -mmmx"
> >> CXXFLAGS="${CFLAGS}"
> >> FEATURES="buildpkg"
> >>
> >> # work around for bug 90306
> >> mknod -m 0444 /dev/random c 1 8
> >> mknod -m 0444 /dev/urandom c 1 9
> >>
> >> # start the bootstrip script
> >> cd /usr/portage/scripts
> >> ./bootstrap.sh -p -v
> >> ./bootstrap.sh
> >>
> >> # emerge system
> >> emerge -e system
> >> # fixes a emerge ebuild bug, this should go away soon
> >> emerge python
> >> # continue with the rest of the emerge system
> >> emerge -e system
> >>
> >>> modify make.conf and set you USE flags for the target embedded build
> >>> these use flags build a smaller system with no documentation, man or
> >>> info
> >>
> >> pages installed
> >> # the make-symlinks option of for busybox to automatically create the
> >> symlinks
> >> to it
> >> nano -w /etc/make.conf
> >> USE="make-symlinks nodoc noinfo noman"
> >>
> >>> build busybox and uclibc, put into the Embedded RootFS (/Embedded
> >>> RootFS)
> >>> don't understand exactally how this works, someone please add comments
> >>
> >> mkdir /Embedded RootFS
> >> ROOT=/Embedded RootFS emerge busybox uclibc
> >>
> >> # emerge other software you need for you embedded target
> >> ROOT=/Embedded RootFS emerge xxxxxxxxx
> >>
> >> # install a kernel into Embedded RootFS
> >> ROOT=/Embedded RootFS emerge vanilla-sources
> >> cd /Embedded RootFS/usr/src
> >> ln -s linux-
> >>
> >> ......... more stuff here ...........
> >> ......... install xorg-x11, less than 10MB hopefully
> >> ......... install light window manager (blackbox, windowmaker, ???)
> >> ......... install very light X11 toolkit (?????)
> >> ......... purge to the Embedded RootFS of unwanted files and libaries
> >> ......... edit all config files
> >> ......... set up the test harddrive on the target SBC
> >> ......... install grub or lilo on the test harddrive on the target SBC
> >> ......... transfer Embedded RootFS to the test harddrive on the target
> >> SBC ......... debug system, and rebuild
> >> ......... deploy Embedded RootFS from the test harddrive to flash
> >> ......... (DiskOnChip, Compact Flash)
> >> ......... tweak, rebuild, redeploy
> >>
> >> --
> >> Heath Holcomb
> >> heath@bulah.com
> >> www.bulah.com
> >> --
> >> gentoo-embedded@gentoo.org mailing list
> >
> > _________________________________________________________________
> >
> >
> > --
> > gentoo-embedded@gentoo.org mailing list

-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo
  2005-05-23  3:26         ` Heath H Holcomb
@ 2005-05-22 17:51           ` michael
  2005-05-23  6:55             ` Marius Schaefer/Camberg/ISBAC
  0 siblings, 1 reply; 18+ messages in thread
From: michael @ 2005-05-22 17:51 UTC (permalink / raw
  To: gentoo-embedded

Thanks Heath.

Has anyone explained this part yet?

  # mount the development_rootfs proc and portage directories
  # don't understand this someone please add comments
  mount --bind /proc /opt/i586-gentoo-uclibc-linux/proc/
  mount --bind /usr/portage /opt/i586-gentoo-uclibc-linux/usr/portage


On Sun, 22 May 2005, Heath H Holcomb wrote:

> Current version is 0.04.  I've posted it to mailing list a few weeks ago.
> It's also at http://www.bulah.com/embeddedgentoo.html
>
-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo
  2005-05-21 18:07       ` michael
@ 2005-05-23  3:26         ` Heath H Holcomb
  2005-05-22 17:51           ` michael
  0 siblings, 1 reply; 18+ messages in thread
From: Heath H Holcomb @ 2005-05-23  3:26 UTC (permalink / raw
  To: gentoo-embedded

Current version is 0.04.  I've posted it to mailing list a few weeks ago.  
It's also at http://www.bulah.com/embeddedgentoo.html

 -- 
Heath Holcomb
heath at bulah.com
www.bulah.com

On 05 21 2005 01:07 pm, michael@michaelshiloh.com wrote:
> Thanks for writing back, Heath, and thanks for your answers.
>
> Is the latest version of you howto available on the web somewhere? If
> not, can you send me the latest version?
>
>
> Thanks,
> Michael
>
> On Sun, 22 May 2005, Heath H Holcomb wrote:
> > I have always planned on using Compact Flash as my storage medium.  You
> > don't have to us any compression if your compact flash size is large
> > enough.  You just have to partition, mount / read only, no swap, and
> > write you embedded application to only mount and write to the compact
> > flash when data is really needed (you can use a separate partition from
> > /).
> >
> > Flash devices have a write limit usually between 100,000 to 300,000
> > times, while hard drive writes are measured in millions or billions.  The
> > higher end compact flash have something that is called ware leveling,
> > which "moves" the memory cells around in the compact flash so writes are
> > distributed through out the entire size of the compact flash instead of
> > the exact same location every time.  This was what made DiskOnChip the
> > preferred choice a few years ago when they had it and compact flash did
> > not.  But most non-cheap compact flash's has were leveling today.
> >
> > --
> > Heath Holcomb
> > heath at bulah.com
> > www.bulah.com
> >
> > On 05 21 2005 10:19 am, michael@michaelshiloh.com wrote:
> >> I agree with Kammi - this is an incredibly useful howto.
> >>
> >> I'm also getting ready to install gentoo on my epia board, I'm using the
> >> ME6000. A major difference, though, is that I want to create the system
> >> on a Compact Flash card.
> >>
> >> I've already done bootable CF systems using a mix of all sort of notes
> >> I've found on the web. As a result, I have a mix of things I don't
> >> understand and I'm sure some things I don't need. This time I'd like to
> >> do it from scratch so that I understand every step.
> >>
> >> In the past I've built the filesystem on my desktop, then compressed it
> >> using cramfs, which gets written to the CF card. I think I'll do the
> >> same this time, but I'd be interested to hear what you all might
> >> recommend.
> >>
> >> Does there exist a howto that describes this whole process? If not,
> >> would others find it useful?
> >>
> >> Any tips, pointers, and suggestions welcome.
> >>
> >> Michael
> >>
> >> On Fri, 29 Apr 2005, Kammi Cazze wrote:
> >>> Hi,
> >>>
> >>> first of all i like your id of putting such a howto up. I hope you will
> >>> get much help from the devs. I think the problem is that this project
> >>> is in full development and ways of accompishing things here vary very
> >>> quickly and are always made better and easier to do.
> >>>
> >>> Here is some stuff you could put into it, because it won't change alot
> >>> in the feature ;)
> >>>
> >>> - You could mention something about how to set the timezone on the
> >>> uclibc box. There is a full expl. on this site:
> >>> http://leaf.sourceforge.net/doc/guide/buci-tz.html
> >>>
> >>>> ROOT=/Embedded RootFS emerge busybox uclibc
> >>>
> >>> You could also put baselayout-lite in it. I don't know what the status
> >>> is by now (ask iggy)!
> >>>
> >>> As on such a system devfs or udef is mostly unwanted, you will have to
> >>> create your /dev nodes manualy, because baselayout-lite only makes the
> >>> most neaded once, like /dev/hd* and /dev/sd*
> >>>
> >>>
> >>> Pierre Cassimans
> >>>
> >>>> From: Heath H Holcomb <heath@bulah.com>
> >>>> Reply-To: gentoo-embedded@lists.gentoo.org
> >>>> To: gentoo-embedded@lists.gentoo.org
> >>>> Subject: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03
> >>>> (unfinished)
> >>>> Date: Fri, 29 Apr 2005 08:49:21 -0500
> >>>>
> >>>> Version 0.03
> >>>> Please add, delete, modify. Thanks!
> >>>>
> >>>>> ---------------------------------------------------------------------
> >>>>>-- ---------------- Embedded Gentoo How-To for x86
> >>>>>
> >>>>> Commands to setup a Gentoo embedded environment, you must be root.
> >>>>> These commands are to be run on your developement system,
> >>>>> any x86 Gentoo Linux computer will do.  The system should be fast,
> >>>>> to speed developement.  The target can be any x86 based SBC.  I'm
> >>>>> using a Geode based SBC.  Latter I'll use a Via based SBC.
> >>>>>
> >>>>> version 0.03
> >>>>> 2005.29.04
> >>>>>
> >>>>> Heath Holcomb (heath at bulah.com)
> >>>>> Ned Ludd (original commands posted)
> >>>>> Yuri Vasilevshi (contributor)
> >>>>> Mike George (contributor)
> >>>>>
> >>>>> Development RootFS = what you use to build the Embedded RootFS
> >>>>> Embedded RootFS = rootfs you deploy to the target system
> >>>>> SBC = single board computer (here it's an x86 based)
> >>>>>
> >>>>> References
> >>>>>
> >>>>>> //www.gentoo.org/doc/en/handbook/index.xml
> >>>>>> //www.epiawiki.org
> >>>>>> //epia.kalf.org
> >>>>>
> >>>>> Gentoo embedded mailing list (gentoo-embedded@lists.gentoo.org)
> >>>>>
> >>>>>
> >>>>> ---------------------------------------------------------------------
> >>>>>-- ----------------
> >>>>>
> >>>>> create the Development RootFS
> >>>>> I use i586 becasue of target is a Geode processor
> >>>>
> >>>> mkdir -p /opt/i586-gentoo-uclibc-linux/usr/portage
> >>>>
> >>>> # download the latest stage 1 tarball
> >>>> wget \
> >>>> http://gentoo.osuosl.org/experimental/x86/embedded/stages/stage1-x86-u
> >>>>cl ibc-2005.0.tar.bz2
> >>>>
> >>>> # untar the stage to the Development RootFS
> >>>> tar -xvjf stage1-x86-uclibc-2005.0.tar.bz2 -C
> >>>> /opt/i586-gentoo-uclibc-linux/
> >>>>
> >>>>> mount the Development RootFS proc and portage directories
> >>>>> don't understand this someone please add comments
> >>>>
> >>>> mount --bind /proc /opt/i586-gentoo-uclibc-linux/proc/
> >>>> mount --bind /usr/portage /opt/i586-gentoo-uclibc-linux/usr/portage
> >>>>
> >>>> # copy over DNS information to the Development RootFS
> >>>> cp /etc/resolv.conf /opt/i586-gentoo-uclibc-linux/etc/resolv.conf
> >>>>
> >>>> # chroot into the Development RootFS, create new environment, load
> >>>> variables
> >>>> into memory
> >>>> chroot /opt/i586-gentoo-uclibc-linux /bin/bash --login
> >>>> env-update
> >>>> source /etc/profile
> >>>>
> >>>> # modify make.conf file to your liking
> >>>> nano -w /etc/make.conf
> >>>> # this is for my target, Geode x86 processor
> >>>> CHOST="i586-gentoo-linux-uclibc"
> >>>> CFLAGS="-march=i586 -Os -pipe -fomit-frame-pointer -mmmx"
> >>>> CXXFLAGS="${CFLAGS}"
> >>>> FEATURES="buildpkg"
> >>>>
> >>>> # work around for bug 90306
> >>>> mknod -m 0444 /dev/random c 1 8
> >>>> mknod -m 0444 /dev/urandom c 1 9
> >>>>
> >>>> # start the bootstrip script
> >>>> cd /usr/portage/scripts
> >>>> ./bootstrap.sh -p -v
> >>>> ./bootstrap.sh
> >>>>
> >>>> # emerge system
> >>>> emerge -e system
> >>>> # fixes a emerge ebuild bug, this should go away soon
> >>>> emerge python
> >>>> # continue with the rest of the emerge system
> >>>> emerge -e system
> >>>>
> >>>>> modify make.conf and set you USE flags for the target embedded build
> >>>>> these use flags build a smaller system with no documentation, man or
> >>>>> info
> >>>>
> >>>> pages installed
> >>>> # the make-symlinks option of for busybox to automatically create the
> >>>> symlinks
> >>>> to it
> >>>> nano -w /etc/make.conf
> >>>> USE="make-symlinks nodoc noinfo noman"
> >>>>
> >>>>> build busybox and uclibc, put into the Embedded RootFS (/Embedded
> >>>>> RootFS)
> >>>>> don't understand exactally how this works, someone please add
> >>>>> comments
> >>>>
> >>>> mkdir /Embedded RootFS
> >>>> ROOT=/Embedded RootFS emerge busybox uclibc
> >>>>
> >>>> # emerge other software you need for you embedded target
> >>>> ROOT=/Embedded RootFS emerge xxxxxxxxx
> >>>>
> >>>> # install a kernel into Embedded RootFS
> >>>> ROOT=/Embedded RootFS emerge vanilla-sources
> >>>> cd /Embedded RootFS/usr/src
> >>>> ln -s linux-
> >>>>
> >>>> ......... more stuff here ...........
> >>>> ......... install xorg-x11, less than 10MB hopefully
> >>>> ......... install light window manager (blackbox, windowmaker, ???)
> >>>> ......... install very light X11 toolkit (?????)
> >>>> ......... purge to the Embedded RootFS of unwanted files and libaries
> >>>> ......... edit all config files
> >>>> ......... set up the test harddrive on the target SBC
> >>>> ......... install grub or lilo on the test harddrive on the target SBC
> >>>> ......... transfer Embedded RootFS to the test harddrive on the target
> >>>> SBC ......... debug system, and rebuild
> >>>> ......... deploy Embedded RootFS from the test harddrive to flash
> >>>> ......... (DiskOnChip, Compact Flash)
> >>>> ......... tweak, rebuild, redeploy
> >>>>
> >>>> --
> >>>> Heath Holcomb
> >>>> heath@bulah.com
> >>>> www.bulah.com
> >>>> --
> >>>> gentoo-embedded@gentoo.org mailing list
> >>>
> >>> _________________________________________________________________
> >>>
> >>>
> >>> --
> >>> gentoo-embedded@gentoo.org mailing list
> >
> > --
> > gentoo-embedded@gentoo.org mailing list

-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo
  2005-05-22 17:51           ` michael
@ 2005-05-23  6:55             ` Marius Schaefer/Camberg/ISBAC
  2005-05-25 15:08               ` michael
  0 siblings, 1 reply; 18+ messages in thread
From: Marius Schaefer/Camberg/ISBAC @ 2005-05-23  6:55 UTC (permalink / raw
  To: gentoo-embedded

michael@michaelshiloh.com wrote on 22.05.2005 19:51:05:

> Thanks Heath.
> 
> Has anyone explained this part yet?
> 
>   # mount the development_rootfs proc and portage directories
>   # don't understand this someone please add comments
>   mount --bind /proc /opt/i586-gentoo-uclibc-linux/proc/
>   mount --bind /usr/portage /opt/i586-gentoo-uclibc-linux/usr/portage
> 

This just makes your proc and portage directories available from inside of 
your development_rootfs (after chrooting). So you don't have to copy over 
all the sources to the small development_rootfs. Probably someone could 
add this as a comment?

BTW: Nice Howto! I'm going to give it a try soon.

Marius Schäfer

> 
> On Sun, 22 May 2005, Heath H Holcomb wrote:
> 
> > Current version is 0.04.  I've posted it to mailing list a few weeks 
ago.
> > It's also at http://www.bulah.com/embeddedgentoo.html
> >
> -- 
> gentoo-embedded@gentoo.org mailing list
> 


-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo
  2005-05-23  6:55             ` Marius Schaefer/Camberg/ISBAC
@ 2005-05-25 15:08               ` michael
  2005-05-26  4:47                 ` Brian Jackson
  0 siblings, 1 reply; 18+ messages in thread
From: michael @ 2005-05-25 15:08 UTC (permalink / raw
  To: gentoo-embedded

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: TEXT/PLAIN; charset=X-UNKNOWN; format=flowed, Size: 2169 bytes --]

Thanks Marius,

I have another question. I'm building for a VIA EPIA ME-6000. I'm using
the following /etc/make.conf:

 	USE="uclibc"
 	CHOST="i586-gentoo-linux-uclibc"
 	CFLAGS="-march=c3 -m3dnow -mmmx -Os -pipe -fomit-frame-pointer"
 	CXXFLAGS="${CFLAGS}"
 	FEATURES="buildpkg"

this based on advice from
   http://www.epiawiki.org/wiki/tiki-index.php?page=EpiaInstallingGentoo
and
   http://gentoo-wiki.com/Safe_Cflags#Eden_C3.2FEzra_.28Via.29


I get an error during emerging the system:

 	i386-gentoo-linux-uclibc-gcc -pthread -shared -march=c3 -m3dnow
 	-mmmx -Os -pipe
 	-fomit-frame-pointer build/temp.linux-i686-2.3/fchksum.o
 	build/temp.linux-i686-2.3/md5.o build/temp.linux-i686-2.3/cksum.o
 	build/temp.linux-i686-2.3/sum.o -lz -o
 	build/lib.linux-i686-2.3/fchksum.so
 	gcc-config error: Could not run/locate "i386-gentoo-linux-uclibc-gcc"
 	error: command 'i386-gentoo-linux-uclibc-gcc' failed with exit status 1

Fair enough, I do not have i386-gentoo-linux-uclibc-gcc, instead I have
i586-gentoo-linux-uclibc-gcc. Why did it not get called?

For now, I'm going to create a link from i586-gentoo-linux-uclibc-gcc to
i386-gentoo-linux-uclibc-gcc, but I'd like to know how I should have
done this properly.

Any advice?

Michael

(P.s Heath - I'm taking notes as I go along to provide feedback to your
excellent HOWTO)




On Mon, 23 May 2005, Marius Schaefer/Camberg/ISBAC wrote:

> michael@michaelshiloh.com wrote on 22.05.2005 19:51:05:
>
>> Thanks Heath.
>>
>> Has anyone explained this part yet?
>>
>>   # mount the development_rootfs proc and portage directories
>>   # don't understand this someone please add comments
>>   mount --bind /proc /opt/i586-gentoo-uclibc-linux/proc/
>>   mount --bind /usr/portage /opt/i586-gentoo-uclibc-linux/usr/portage
>>
>
> This just makes your proc and portage directories available from inside of
> your development_rootfs (after chrooting). So you don't have to copy over
> all the sources to the small development_rootfs. Probably someone could
> add this as a comment?
>
> BTW: Nice Howto! I'm going to give it a try soon.
>
> Marius Schäfer

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo
  2005-05-26  4:47                 ` Brian Jackson
@ 2005-05-25 16:58                   ` michael
  2005-05-25 17:17                     ` michael
  0 siblings, 1 reply; 18+ messages in thread
From: michael @ 2005-05-25 16:58 UTC (permalink / raw
  To: gentoo-embedded


On Wed, 25 May 2005, Brian Jackson wrote:

> michael@michaelshiloh.com wrote:
...
>> 
>>
>> I get an error during emerging the system:
>>
>>     i386-gentoo-linux-uclibc-gcc -pthread -shared -march=c3 -m3dnow
>>     -mmmx -Os -pipe
>>     -fomit-frame-pointer build/temp.linux-i686-2.3/fchksum.o
>>     build/temp.linux-i686-2.3/md5.o build/temp.linux-i686-2.3/cksum.o
>>     build/temp.linux-i686-2.3/sum.o -lz -o
>>     build/lib.linux-i686-2.3/fchksum.so
>>     gcc-config error: Could not run/locate "i386-gentoo-linux-uclibc-gcc"
>>     error: command 'i386-gentoo-linux-uclibc-gcc' failed with exit status 1
>>
>> Fair enough, I do not have i386-gentoo-linux-uclibc-gcc, instead I have
>> i586-gentoo-linux-uclibc-gcc. Why did it not get called?
>
> You probably changed CHOST on a stage3 (it's only allowed to be changed on a
> stage1 bootstrap).
>
> --Iggy
>

I'm pretty sure it's a stage 1. I'm following Heath's HOWTO at

   http://www.bulah.com/embeddedgentoo.html

Actually, I found a possible solution in the archives of this very list
which I'm testing now:

 	run `gcc-config 1` and then `source /etc/profile` and see if
 	that fixes things
 	-mike

By the way, do we prefer top posting or bottom posting on this list? In
the archives I saw both. I got in trouble on another list for doing it
wrong.

Michael
-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo
  2005-05-25 16:58                   ` michael
@ 2005-05-25 17:17                     ` michael
  0 siblings, 0 replies; 18+ messages in thread
From: michael @ 2005-05-25 17:17 UTC (permalink / raw
  To: gentoo-embedded



On Wed, 25 May 2005 michael@michaelshiloh.com wrote:

>
> On Wed, 25 May 2005, Brian Jackson wrote:
>
>> michael@michaelshiloh.com wrote:
> ...
>>> 
>>> 
>>> I get an error during emerging the system:
>>> 
>>> i386-gentoo-linux-uclibc-gcc -pthread -shared -march=c3 -m3dnow
>>> -mmmx -Os -pipe
>>> -fomit-frame-pointer build/temp.linux-i686-2.3/fchksum.o
>>> build/temp.linux-i686-2.3/md5.o build/temp.linux-i686-2.3/cksum.o
>>> build/temp.linux-i686-2.3/sum.o -lz -o
>>> build/lib.linux-i686-2.3/fchksum.so
>>> gcc-config error: Could not run/locate 
>>> "i386-gentoo-linux-uclibc-gcc"
>>> error: command 'i386-gentoo-linux-uclibc-gcc' failed with exit 
>>> status 1
>>> 
>>> Fair enough, I do not have i386-gentoo-linux-uclibc-gcc, instead I have
>>> i586-gentoo-linux-uclibc-gcc. Why did it not get called?
>> 
>> You probably changed CHOST on a stage3 (it's only allowed to be changed 
>> on a
>> stage1 bootstrap).
>> 
>> --Iggy
>> 
>
> I'm pretty sure it's a stage 1. I'm following Heath's HOWTO at
>
>  http://www.bulah.com/embeddedgentoo.html
>
> Actually, I found a possible solution in the archives of this very list
> which I'm testing now:
>
> run `gcc-config 1` and then `source /etc/profile` and see if
> that fixes things
> -mike

Heath, this reply I found in the archives was in response to a question
from you. Did it work for you? It did not for me.

Michael
-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo
  2005-05-25 15:08               ` michael
@ 2005-05-26  4:47                 ` Brian Jackson
  2005-05-25 16:58                   ` michael
  0 siblings, 1 reply; 18+ messages in thread
From: Brian Jackson @ 2005-05-26  4:47 UTC (permalink / raw
  To: gentoo-embedded

michael@michaelshiloh.com wrote:
> Thanks Marius,
> 
> I have another question. I'm building for a VIA EPIA ME-6000. I'm using
> the following /etc/make.conf:
> 
>     USE="uclibc"
>     CHOST="i586-gentoo-linux-uclibc"
>     CFLAGS="-march=c3 -m3dnow -mmmx -Os -pipe -fomit-frame-pointer"
>     CXXFLAGS="${CFLAGS}"
>     FEATURES="buildpkg"
> 
> this based on advice from
>   http://www.epiawiki.org/wiki/tiki-index.php?page=EpiaInstallingGentoo
> and
>   http://gentoo-wiki.com/Safe_Cflags#Eden_C3.2FEzra_.28Via.29
> 
> 
> I get an error during emerging the system:
> 
>     i386-gentoo-linux-uclibc-gcc -pthread -shared -march=c3 -m3dnow
>     -mmmx -Os -pipe
>     -fomit-frame-pointer build/temp.linux-i686-2.3/fchksum.o
>     build/temp.linux-i686-2.3/md5.o build/temp.linux-i686-2.3/cksum.o
>     build/temp.linux-i686-2.3/sum.o -lz -o
>     build/lib.linux-i686-2.3/fchksum.so
>     gcc-config error: Could not run/locate "i386-gentoo-linux-uclibc-gcc"
>     error: command 'i386-gentoo-linux-uclibc-gcc' failed with exit status 1
> 
> Fair enough, I do not have i386-gentoo-linux-uclibc-gcc, instead I have
> i586-gentoo-linux-uclibc-gcc. Why did it not get called?

You probably changed CHOST on a stage3 (it's only allowed to be changed on a
stage1 bootstrap).

--Iggy

> 
> For now, I'm going to create a link from i586-gentoo-linux-uclibc-gcc to
> i386-gentoo-linux-uclibc-gcc, but I'd like to know how I should have
> done this properly.
> 
> Any advice?
> 
> Michael
> 
> (P.s Heath - I'm taking notes as I go along to provide feedback to your
> excellent HOWTO)

-- 
Stuff for sale -- http://www.brianandsara.net/temp/forsale.html
Gentoo Linux -- http://www.gentoo.org
IVTV -- http://ivtv.writeme.ch
-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 (unfinished)
  2005-05-02  4:14     ` Yuri Vasilevski
@ 2005-06-09 13:25       ` Heath H Holcomb
  2005-06-10  0:49         ` Yuri Vasilevski
  0 siblings, 1 reply; 18+ messages in thread
From: Heath H Holcomb @ 2005-06-09 13:25 UTC (permalink / raw
  To: gentoo-embedded

Sorry for the long delay.  Here is the output of the emerge -e system on the 
first attempt.

>>> emerge (13 of 66) dev-python/python-fchksum-1.7.1 to /
>>> md5 files   ;-) python-fchksum-1.7.1.ebuild
>>> md5 files   ;-) python-fchksum-1.6.1-r1.ebuild
>>> md5 files   ;-) ChangeLog
>>> md5 files   ;-) metadata.xml
>>> md5 files   ;-) files/digest-python-fchksum-1.7.1
>>> md5 files   ;-) files/digest-python-fchksum-1.6.1-r1
>>> md5 src_uri ;-) python-fchksum-1.7.1.tar.gz
>>> Unpacking source...
>>> Unpacking python-fchksum-1.7.1.tar.gz 
to /var/tmp/portage/python-fchksum-1.7.1/work
>>> Source unpacked.
['setup.py', 'build']
running build
running build_ext
building 'fchksum' extension
creating build
creating build/temp.linux-i686-2.3
i386-gentoo-linux-uclibc-gcc -pthread -fno-strict-aliasing -DNDEBUG 
-march=i586 -Os -pipe -fomit-frame-pointer -mmmx -fPIC 
-I/usr/include/python2.3 -c md5.c -o build/temp.linux-i686-2.3/md5.o
gcc-config error: Could not run/locate "i386-gentoo-linux-uclibc-gcc"
error: command 'i386-gentoo-linux-uclibc-gcc' failed with exit status 1

!!! ERROR: dev-python/python-fchksum-1.7.1 failed.
!!! Function src_compile, Line 20, Exitcode 1
!!! (no error message)
!!! If you need support, post the topmost build error, NOT this status 
message.


It seams to be bug 88777.
http://bugs.gentoo.org/show_bug.cgi?id=88777

I found the work around in the Gentoo forums.
http://forums.gentoo.org/viewtopic-t-314985-start-401.html

The problem is repeatable (every time) with the steps in my x86 how-to.  The 
"workaround" works every time.


-- 
Heath Holcomb
liquidcable
liquidcable at bulah.com


On Sunday 01 May 2005 11:14 pm, Yuri Vasilevski wrote:
> Hi,
>
> On Sat, 30 Apr 2005 15:04:28 -0500
>
> Heath H Holcomb <heath@bulah.com> wrote:
> > > > emerge -e system
> > > > # fixes a emerge ebuild bug, this should go away soon
> > > > emerge python
> > > > # continue with the rest of the emerge system
> > > > emerge -e system
> >
> > This was just a for a work around for a bug I encountered.
>
> Could you please provide more info about this bug?
> Is it related to http://bugs.gentoo.org/show_bug.cgi?id=91024 ?
> (This one is the only thing i found on Gnetoo's Bugzilla
> that looks lake a god candidate for the bug you have.)
>
> Yuri.

-- 
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 (unfinished)
  2005-06-09 13:25       ` Heath H Holcomb
@ 2005-06-10  0:49         ` Yuri Vasilevski
  0 siblings, 0 replies; 18+ messages in thread
From: Yuri Vasilevski @ 2005-06-10  0:49 UTC (permalink / raw
  To: gentoo-embedded

[-- Attachment #1: Type: text/plain, Size: 2853 bytes --]

Hi,

It was interesting trying to hack into this problem :-)
And now I understand the exact problem and see a couple
of ways to eradicate the very ugly
# emerge -e system ; emerge python ; emerge -e system
step from Heath's how to.

First, you can see why this happens in my comment to
the bug you pointed me too (bug #88777).

And the solution's I see for Heath's how to (the ones
I consider reasonables) are:

- edit /usr/lib/python2.3/config/Makefile changing:
  from "CC=             i386-gentoo-linux-uclibc-gcc -pthread"
  to "CC=             gcc -pthread" at line #32

- apply the attached patch to automate this change.
  # cd / && patch -p0 < path/to/python.patch

This two options can be followed at any point in Heath's
how to up to just before the emerge -e system step.

- Try using stage1-x86-uclibc-2004.3.tar.bz2 instead
  of stage1-x86-uclibc-2005.0.tar.bz2 as it should not
  suffer form this problem.

- Hope that this problem will be solved soon (possibly
  with the solution I give in my comment to the bug).

Best wishes,
Yuri.

On Thu, 9 Jun 2005 08:25:39 -0500
Heath H Holcomb <liquidcable@bulah.com> wrote:

> Sorry for the long delay.  Here is the output of the emerge -e system on the 
> first attempt.
> 
> >>> emerge (13 of 66) dev-python/python-fchksum-1.7.1 to /
> >>> md5 files   ;-) python-fchksum-1.7.1.ebuild
> >>> md5 files   ;-) python-fchksum-1.6.1-r1.ebuild
> >>> md5 files   ;-) ChangeLog
> >>> md5 files   ;-) metadata.xml
> >>> md5 files   ;-) files/digest-python-fchksum-1.7.1
> >>> md5 files   ;-) files/digest-python-fchksum-1.6.1-r1
> >>> md5 src_uri ;-) python-fchksum-1.7.1.tar.gz
> >>> Unpacking source...
> >>> Unpacking python-fchksum-1.7.1.tar.gz 
> to /var/tmp/portage/python-fchksum-1.7.1/work
> >>> Source unpacked.
> ['setup.py', 'build']
> running build
> running build_ext
> building 'fchksum' extension
> creating build
> creating build/temp.linux-i686-2.3
> i386-gentoo-linux-uclibc-gcc -pthread -fno-strict-aliasing -DNDEBUG 
> -march=i586 -Os -pipe -fomit-frame-pointer -mmmx -fPIC 
> -I/usr/include/python2.3 -c md5.c -o build/temp.linux-i686-2.3/md5.o
> gcc-config error: Could not run/locate "i386-gentoo-linux-uclibc-gcc"
> error: command 'i386-gentoo-linux-uclibc-gcc' failed with exit status 1
> 
> !!! ERROR: dev-python/python-fchksum-1.7.1 failed.
> !!! Function src_compile, Line 20, Exitcode 1
> !!! (no error message)
> !!! If you need support, post the topmost build error, NOT this status 
> message.
> 
> 
> It seams to be bug 88777.
> http://bugs.gentoo.org/show_bug.cgi?id=88777
> 
> I found the work around in the Gentoo forums.
> http://forums.gentoo.org/viewtopic-t-314985-start-401.html
> 
> The problem is repeatable (every time) with the steps in my x86 how-to.  The 
> "workaround" works every time.
> 
> 
> -- 
> Heath Holcomb
> liquidcable
> liquidcable at bulah.com

[-- Attachment #2: python.patch --]
[-- Type: text/x-patch, Size: 293 bytes --]

--- usr/lib/python2.3/config/Makefile.orig	2005-06-09 19:36:03.000000000 -0500
+++ usr/lib/python2.3/config/Makefile	2005-06-09 19:38:02.000000000 -0500
@@ -29,7 +29,7 @@
 srcdir=		.
 
 
-CC=		i386-gentoo-linux-uclibc-gcc -pthread
+CC=		gcc -pthread
 CXX=		
 LINKCC=		$(PURIFY) $(CC)
 AR=		ar

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2005-06-10  0:37 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-04-29 13:49 [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.03 (unfinished) Heath H Holcomb
2005-04-29 14:27 ` Ned Ludd
2005-04-30 20:04   ` Heath H Holcomb
2005-04-30 21:41     ` Ned Ludd
2005-05-02  4:14     ` Yuri Vasilevski
2005-06-09 13:25       ` Heath H Holcomb
2005-06-10  0:49         ` Yuri Vasilevski
2005-04-29 16:39 ` Kammi Cazze
2005-05-21 15:19   ` [gentoo-embedded] x86 SBC Gentoo Embedded HowTo michael
2005-05-22  5:46     ` Heath H Holcomb
2005-05-21 18:07       ` michael
2005-05-23  3:26         ` Heath H Holcomb
2005-05-22 17:51           ` michael
2005-05-23  6:55             ` Marius Schaefer/Camberg/ISBAC
2005-05-25 15:08               ` michael
2005-05-26  4:47                 ` Brian Jackson
2005-05-25 16:58                   ` michael
2005-05-25 17:17                     ` michael

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox