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 |