Gentoo Archives: gentoo-embedded

From: Quentin Arce <qarce@×××××.com>
To: gentoo-embedded@l.g.o
Subject: Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.06 (almost finished)
Date: Tue, 14 Jun 2005 14:01:08
Message-Id: 20050614140146.21402.qmail@web60819.mail.yahoo.com
In Reply to: Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.06 (almost finished) by michael@michaelshiloh.com
1 --- michael@×××××××××××××.com wrote:
2
3 > Hi Yuri, Heath, Gentoo-embedded folks:
4 >
5 > I've taken your suggestion, Heath, and built a 2.6
6 > kernel (instead of
7 > the 2.4 I made by accident), and I've followed
8 > version 0.6 of your HOWTO
9 > with Yuri's comments.
10 >
11 > Grub loads, finds the kernel, and booting starts,
12 > but it doesn't go all
13 > the way:
14 >
15 > warning: unable to open an initial console
16 > kernel panic: no init found
17
18 I had this exact error for a while with a 2.6 kernel
19 and using syslinux to boot. It turned out I had the
20 wrong root device. The naming changed between my
21 image build system and the real system. I'm assuming
22 you are building an embedded system for some old
23 hardware and it's not really an embedded system.
24
25 my 1.5 cents
26 Q
27
28 > (That's not an exact quote). I've checked that my
29 > kernel's .config
30 > includes consoles, and that /dev/console exists and
31 > is linked to
32 > character device 5,1.
33 >
34 > I haven't done a whole lot of research into this yet
35 > but wonder if
36 > anything springs to your collective minds.
37 >
38 > As usual, any comments appreciated and any
39 > suggestions entertained.
40 >
41 > Michael
42 >
43 >
44 > On Mon, 6 Jun 2005, Yuri Vasilevski wrote:
45 >
46 > > Hi,
47 > >
48 > > On Mon, 6 Jun 2005 10:03:26 -0500
49 > > Heath H Holcomb <liquidcable@×××××.com> wrote:
50 > >
51 > >> Version 0.06
52 > >> Please add, delete, modify. Thanks!
53 > >
54 > > Just some things that came to my mind with respect
55 > to this
56 > > version.
57 > >
58 > >> This procedure produces a working embedded
59 > rootfs, that boots form a hard
60 > >> drive on a Geode based SBC (single board
61 > computer); at least on my
62 > >> development system.
63 > >>
64 > >> I've update my website with this version also.
65 > >> http://www.bulah.com/embeddedgentoo.html
66 > >>
67 > >>
68 > >>
69 >
70 #--------------------------------------------------------------------------------
71 > >> # Embedded Gentoo How-To for x86
72 > >> #
73 > >> # A how-to guide to setup a Gentoo embedded
74 > environment, you must be root.
75 > >> # These commands are to be run on your
76 > development system,
77 > >> # any x86 Gentoo Linux computer will do. The
78 > system should be fast,
79 > >> # to speed development. The target can be any
80 > x86 based SBC. I'm
81 > >> # using a Geode based SBC. Latter I'll use a Via
82 > based SBC.
83 > >> #
84 > >> # version 0.06
85 > >> # 2005.6.6
86 > >> #
87 > >> # Heath Holcomb (heath at bulah.com)
88 > >> # Ned Ludd (embedded Gentoo project lead,
89 > original commands posted)
90 > >> # Lloyd Sargent (contributor)
91 > >> # Yuri Vasilevshi (contributor)
92 > >
93 > > It's Vasilevski :-)
94 > >
95 > >> # Mike George (contributor)
96 > >> # Kammi Cazze (contributor)
97 > >> # Marius Schaefer (contributor)
98 > >> #
99 > >> # Definitions and Terms
100 > >> # system_rootfs = your regular rootfs
101 > >> # development_rootfs = what you use to build the
102 > embedded_rootfs
103 > >> # embedded_rootfs = rootfs you deploy to the
104 > target system
105 > >> # SBC = single board computer (here it's an x86
106 > based)
107 > >> #
108 > >> # References
109 > >> # http://www.gentoo.org/doc/en/handbook/index.xml
110 > >> # http://www.epiawiki.org
111 > >> # http://epia.kalf.org
112 > >> # Gentoo embedded mailing list
113 > (gentoo-embedded@l.g.o)
114 > >> #
115 > >> #
116 > >> # Overview of process (steps)
117 > >> # 1 - Prepare the development_rootfs from your
118 > system_rootfs
119 > >> # 2 - Build the development_rootfs
120 > >> # 3 - Build the embedded_rootfs
121 > >> # 4 - Build and install non-system programs to
122 > the embedded_rootfs
123 > >> # 5 - Build and install a kernel to the
124 > embedded_rootfs
125 > >> # 6 - Deploy embedded_rootfs to target
126 > >> #
127 > >>
128 >
129 #--------------------------------------------------------------------------------
130 > >>
131 > >> #----- Step 1 - Prepare the development_rootfs
132 > from your system_rootfs -------
133 > >>
134 > >> # You must be root.
135 > >> su -
136 > >>
137 > >> # Create the development_rootfs.
138 > >> # I use i586 because of target is a Geode
139 > processor.
140 > >> mkdir -p
141 > /opt/i586-gentoo-uclibc-linux/usr/portage
142 > >>
143 > >> # Download the latest stage 1 tarball.
144 > >> wget \
145 > >>
146 >
147 http://gentoo.osuosl.org/experimental/x86/embedded/stages/stage1-x86-uclibc-2005.0.tar.bz2
148 > >>
149 > >> # Untar the stage to the development_rootfs.
150 > >> tar -xvjf stage1-x86-uclibc-2005.0.tar.bz2 -C
151 > /opt/i586-gentoo-uclibc-linux/
152 > >
153 > > it should be tar -xvjpf ...
154 > > where -p stands for --preserve-permissions
155 > >
156 > >>
157 > >> # Mount the proc and portage directories to your
158 > development_rootfs.
159 > >> # Makes your system_rootfs's proc and portage
160 > directory available from inside
161 > >> # of your development_rootfs (after chrooting).
162 > >> mount --bind /proc
163 > /opt/i586-gentoo-uclibc-linux/proc/
164 > >> mount --bind /usr/portage
165 > /opt/i586-gentoo-uclibc-linux/usr/portage
166 > >>
167 > >> # Copy over DNS information to the
168 > development_rootfs.
169 > >> cp /etc/resolv.conf
170 > /opt/i586-gentoo-uclibc-linux/etc/resolv.conf
171 > >>
172 > >> # Chroot into the development_rootfs.
173 > >> chroot /opt/i586-gentoo-uclibc-linux /bin/bash
174 > --login
175 > >>
176 > >>
177 > >> #----- Step 2 - Build the development_rootfs
178 > ---------------------------------
179 > >>
180 > >> # Create new environment and load variables into
181 > memory.
182 > >> env-update
183 > >> source /etc/profile
184 > >>
185 > >> # Modify make.conf file to your liking/needs.
186 > >> nano -w /etc/make.conf
187 > >> # This is for my target, Geode x86 processor.
188 > >> /*
189 > >> USE="bitmap-fonts minimal truetype-fonts uclibc
190 > mmx"
191 > >
192 > > The uclibc USE flag was obsoleted, see:
193 > >
194 >
195 http://www.mail-archive.com/gentoo-embedded@l.g.o/msg00140.html
196 > >
197 > >> CHOST="i586-gentoo-linux-uclibc"
198 > >> CFLAGS="-march=i586 -Os -pipe
199 > -fomit-frame-pointer -mmmx"
200 > >> CXXFLAGS="${CFLAGS}"
201 > >> FEATURES="buildpkg"
202 > >>
203 > >> VIDEO_CARDS="chips"
204 > >> UCLIBC_CPU="586MMX"
205 > >> */
206 > >>
207 > >> # Set profile to use 2.6 kernel.
208 > >> # The current stage uses 2.4 by default, and for
209 > most cases you are going
210 > >> # to want a 2.6.x kernel.
211 > >> rm /etc/make.profile
212 > >
213 > > This are equivalent but I would use:
214 > > unlink /etc/make.profile
215 > > for clarity's sake.
216 > >
217 > >> ln -s /usr/portage/profiles/uclibc/x86
218 > /etc/make.profile
219 >
220 === message truncated ===
221
222
223 __________________________________________________
224 Do You Yahoo!?
225 Tired of spam? Yahoo! Mail has the best spam protection around
226 http://mail.yahoo.com
227 --
228 gentoo-embedded@g.o mailing list

Replies

Subject Author
Re: [gentoo-embedded] x86 SBC Gentoo Embedded HowTo version 0.06 (almost finished) michael@×××××××××××××.com