Gentoo Archives: gentoo-embedded

From: Chris PeBenito <pebenito@g.o>
To: Embedded Gentoo Mail List <gentoo-embedded@g.o>
Subject: Re: [gentoo-embedded] IRC Meeting Summary
Date: Mon, 24 Nov 2003 23:58:47
Message-Id: 1069718325.1788.66.camel@chris.pebenito.net
In Reply to: Re: [gentoo-embedded] IRC Meeting by Chris PeBenito
1 On Sun, 2003-11-23 at 15:46, Chris PeBenito wrote:
2 > The raw IRC log for the meeting is available at:
3 >
4 > http://dev.gentoo.org/~pebenito/20031123-meeting.log
5
6 Summary thanks to aja (AJ Armstrong):
7
8 The meeting opened as scheduled on the #gentoo-embedded IRC channel,
9 20:00 UTC, 23 Nov 2003.
10
11 The agenda (from a gentoo-embedded post by pebenito) was:
12
13 1. Cross Compilers (Kumba)
14 2. Toolchain, esp uClibc stuff (solar)
15 3. Portage: ibuild vs. portage, need to iron out all the stuff we're not
16 sure about, profiles, ROOT=, chroot for building, etc.
17 4. Baselayout-lite: either cut down the current baselayout or put
18 together a baselayout-lite
19 5. Handhelds: ebuilds for opie/gpe/stuff like that along with ebuilds
20 for handhelds.org along with other stuff for iPAQ hardware support
21 (abhishek)
22
23 Cross-Compilers
24 ---------------
25 Kumba gave a summary of the forthcoming cross-compiler script
26 (expected to be released in a few days). It is primarily a hack
27 around portage that uses portage to pull down package versions, unpack
28 and patch them. It then generates the cross-compiler and stores in in
29 /home/crossdev/<arch>/bin. The compiler can then be accessed in that
30 path (which might be added to $PATH). You can optionally create a
31 kernel-only compiler (binutils + gcc-bootstrap) or a full compiler
32 toolchain (binutils, gcc-bootstrap, glibc, gcc-full).
33
34 Solar pointed out that there may be some issues with ./configure
35 scripts locating the proper linker. The general consensus was that we
36 could address that when the script is released and some more eyes can
37 look at it.
38
39 Similarly, some initial discussion about how to integrate portage more
40 fully was deferred until more people had knowledge of the script,
41 including some of the devs who work more closely with portage.
42 Potentially, it may be possible to "emerge gcc" with the right options
43 to get a cross-compiler. Kumba pointed out that slots and gcc-config
44 will need to be considered, and made gcc-config-1.4.3 and 1.4.5 source
45 available for consideration.
46
47 Kumba will make a general announcement on -dev and -embedded when the
48 source for the cross-compiler scripts is available.
49
50 It was pointed out that Daniel (dragonheart) had made a long post to
51 -embedded because he was going to be unable to attend the meeting.
52 This included a call for architectures that would be available for
53 testing. There was a pause while some read the message.
54
55 Sindian was asked to help Kumba with some ARM-specific concerns about
56 march settings when building cross-compliers.
57
58 Toolchain
59 ---------
60 Solar gave a bit of a summary of the work that he, dragonheart and
61 mutex had been working on with respect to the toolchain.
62
63 We are currently looking at the uClibc toolchain, and there have been
64 several changes in the way it is built. The compiler and some other
65 tools are no longer part of the uClibc toolchain, and must be built
66 separately for each arch. However, the buildroot tool provides a
67 fairly simple way to integrate the process. Currently, dragonheart,
68 solar et al are working at modifying these tools for integration with
69 portage.
70
71 Dragonheart's -embedded post indicated that he was making headway on
72 these issues, as well as some of the base layout, and we were once
73 again encouraged to read it.
74
75 aja pointed out that there would be some fluctuation in uClinux and
76 uClibc with the forthcoming merging of uClinux into 2.6. We should
77 make sure we monitor developments so that we do not end up building
78 against orphaned versions.
79
80 The uClinux list:
81 http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
82 The uClibc list: http://codepoet.org/mailman/listinfo/uclibc
83
84 Solar indicated that target architectures for initial testing would
85 probably be x86 and ARM. Other architectures will depend on
86 availability of volunteers with appropriate hardware. People should
87 post to -embedded in response to Dragonheart's email if they can spare
88 time/devices for testing.
89
90 Portage
91 -------
92 The discussion of portage integration had already come up with the
93 previous topics. Pebenito pointed out that we had the options of
94 working with liquidx's ibuild system, or going with portage.
95
96 The consensus seemed to prefer portage. Solar pointed out that
97 portage could be used in a chrooted environment with a cross-compiler
98 and platform-specific libraries to build binary packages. The binary
99 packages could then be expanded into a filesystem image in preparation
100 for transfer to the target device.
101
102 This technique seemed to be preferred by most. At some future point,
103 there will probably be a need to develop some specialized tools to
104 handle binary package expansion and managing filesystem images and
105 transfer (flashing) to target platforms.
106
107 It was pointed out by sindian that FEATURES settings could be used to
108 handle a lot of the cross-compilation specific issues, to avoid having
109 to add man USE flags or create new make.conf settings.
110
111 Sindian also pointed out that runtime checks during ./configure will
112 be an issue, and aja indicated that some userland applications may
113 need to be patched for embedded platforms that do not support fork or
114 which are big-endian. The consensus was that these issues could be
115 handled when they occur.
116
117 Baselayout-Lite
118 ---------------
119 Dragonheart's post includes some information on baselayout packages
120 from the uClibc project.
121
122 Baselayout-lite is the set of basic utilities (runtime scripts, shell,
123 init, apps, etc.) that are required for a functioning Linux system.
124 Embedded devices generally require a baselayout significantly
125 scaled-down from that found in a full-blown system.
126
127 The discussion indicated that we need further investigation. The base
128 layout from buildroot (per dragonheart's post) would be a good place
129 to start. We should also consider gentoo's existing base layout and
130 whether we can pare that down to an embedded version. Other projects,
131 like busybox, were mentioned.
132
133 Generally, this will depend a bit on how the build environment work
134 progresses.
135
136 Handhelds
137 ---------
138 A lot of this will have to wait until we know what hardware is
139 available for testing.
140
141 Abhishek has already been working on ipaq ebuilds, including some work
142 with the opie environment.
143
144 Conclusions
145 -----------
146 Kumba is currently taking the lead on the cross compiler scripts, and
147 will be releasing them for discussion soon. Sindian will assist.
148
149 Dragonheart and Solar are leading on the toolchain work. The
150 boottools from uClinux are a starting point.
151
152 Pebenito will own the Portage and Baselayout stuff for now - some of
153 the work on boottools will be useful for the base layout.
154
155 We need to get a list of available test platforms and
156 owner/volunteers.
157
158 The build environment (cross compilers and toolchains) will probably
159 need to come first - then we can start on a base layout set for
160 various architectures.
161
162 Handhelds will probably need to wait on some of that stuff fleshing
163 out.
164
165 aja got roped into doing these notes.
166
167
168 --
169 Chris PeBenito
170 <pebenito@g.o>
171 Developer,
172 Hardened Gentoo Linux
173 Embedded Gentoo Linux
174
175 Public Key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xE6AF9243
176 Key fingerprint = B0E6 877A 883F A57A 8E6A CB00 BC8E E42D E6AF 9243

Attachments

File name MIME type
signature.asc application/pgp-signature