1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>
<TITLE>uClibc -- a C library for embedded systems</TITLE>
</HEAD>
<body text="#000000" alink="#660000" link="#660000" bgcolor="#dee2de" vlink="#660000">
<basefont face="lucida, helvetica, arial" size="3">
<CENTER>
<p>
<TABLE BORDER=0 CELLSPACING=1 CELLPADDING=2>
<TR>
<td bgcolor="#000000">
<FONT FACE="lucida, helvetica" COLOR="#ccccc0">
<B>µ C l i b c</B>
</FONT>
</TD>
</TR>
</TABLE>
<p>
<!-- Begin Introduction section -->
<TABLE WIDTH=95% CELLSPACING=1 CELLPADDING=4 BORDER=1>
<TR><TD BGCOLOR="#ccccc0" ALIGN=center>
<A NAME="intro"> <BIG><B>
uClibc -- a C library for embedded systems
</font>
</A></B></BIG>
</TD></TR>
<TR><TD BGCOLOR="#eeeee0">
<a href="http://www.uclibc.org">uClibc</a> (aka µClibc/pronounced yew-see-lib-see)
is a C library for embedded Linux systems. It is much smaller then the
<a href="http://www.gnu.org/software/libc/libc.html">GNU C Library</a>, but
nearly all applications supported by glibc also work perfectly with uClibc.
Porting applications from glibc to uClibc typically involves just recompiling
the source code. uClibc supports standard Linux architectures (such as x86,
strongArm, and powerpc), and also supports
<a href="http://www.uclinux.org">MMU-less (also known as µClinux)</a>
architectures such as the Coldfire, Dragonball, and ARM7TDMI micro-controllers.
If you are building an embedded Linux system and you find that glibc is
eating up too much space, you should consider using uClibc. If you are
building a huge fileserver with 12 Terabytes of storage, then using
glibc may be a better choice...
<p>
<p>
uClibc is maintained by
<a href="http://www.codepoet.org/andersen/erik/erik.html">Erik Andersen</a>
and is licensed under the
<a href="http://www.gnu.org/copyleft/lgpl.html">GNU LIBRARY GENERAL PUBLIC LICENSE</a>
. This license allows you to make closed source commercial applications using
uClibc (Please consider sharing some of the money you make ;-). You do not need
to give away all your source code just because you use uClibc and/or run on Linux.
<p>
<!-- Begin Mailing list section -->
<TR><TD BGCOLOR="#ccccc0" ALIGN=center>
<A NAME="mailing_list"><BIG><B>
Mailing List
</A></B></BIG>
</TD></TR>
<TR><TD BGCOLOR="#eeeee0">
uClibc has a
<a href="/lists/uclibc/">mailing list</a>.
To subscribe, go and visit
<a href="http://www.uclibc.org/mailman/listinfo/uclibc">this page</a>.
<p>
<!-- Begin Applications section -->
<TR><TD BGCOLOR="#ccccc0" ALIGN=center>
<A NAME="applications"><BIG><B>
Known Working Applications List
</A></B></BIG>
</TD></TR>
<TR><TD BGCOLOR="#eeeee0">
uClibc now has a <a href="uClibc-apps.html">list of applications</a>
that are known to work. Submissions are welcome!
Since most applications work just fine with uClibc, we are especially
interested in knowing about any applications that either do not compile
at all or do not work properly with uClibc.
<!-- Begin Applications section -->
<TR><TD BGCOLOR="#ccccc0" ALIGN=center>
<A NAME="faq"><BIG><B>
Frequently Asked Questions
</A></B></BIG>
</TD></TR>
<TR><TD BGCOLOR="#eeeee0">
uClibc now has a <a href="FAQ.html">list of Frequently Asked Questions</a>.
You might want to take a look.
<!-- Begin Latest News section -->
<TR><TD BGCOLOR="#ccccc0" ALIGN=center>
<A NAME="news">
<BIG><B>
Latest News</A>
</B></BIG>
</A>
</TD></TR>
<TR><TD BGCOLOR="#eeeee0">
<ul>
<li> <b>10 April 2002, uClibc 0.9.11 Released</b>
<br>
CodePoet Consulting is pleased to announce the immediate availability of
uClibc 0.9.11. This release is primarily focused on fixing the issues that
have turned up since the last release. Several bugs in the gcc wrapper
have been fixed, allowing things like iproute2 and XFree86 to link properly
now. Large file support has been improved, and a thread locking bug was
fixed that could cause s*printf calls to deadlock when threading was
enabled. Several bugs were also fixed with the powerpc, h8300, m68k,
sparc, and mips architecture support. Many additional applications now
compile and run perfectly and have been added to the end of the <a
href="uClibc-apps.html">working applications list</a> .
<p>
The <a href="downloads/Changelog">Changelog</a>
and <a href="downloads/uClibc-0.9.11.tar.bz2">source code</a>
for this release are available <a href="downloads/">here</a>.
<p>
<li> <b>10 April 2002, Native uClibc/gcc-3.0.4 toolchain</b>
<br>
CodePoet Consulting has released source code and a Makefile
to build a gcc-3.0.4 toolchain that natively targets uClibc.
This brings with it full C++ support for uClibc, including the
libstdc++ library. A gcc-2.95.x toolchain will also be released
shortly, but is not yet ready. At this time, only source code and
a Makefile for the native uClibc toolchain is being released (i.e.
no binaries, sorry). Source code can be downloaded
<a href="downloads/toolchain/">here</a>,
but be aware that the source code is 27 MB.
<p>
To build the toolchain, simply grab the source, edit the Makefile
to select where you would like the toolchain installed. Then
run 'make and wait for it to compile. If you do not have a copy
of uClibc already, it will download the latest daily snapshot.
<p>
<li> <b>21 March 2002, uClibc 0.9.10 Released!</b>
<br>
CodePoet Consulting is pleased to announce the immediate
availability of uClibc 0.9.10. This release adds pthreads support
(including pthreads support for mmu-less systems!). Additionally,
thanks to Manuel Novoa III, we now have a completely new stdio
library, which is small, standards compliant, supports pthreads,
wide/narrow streams, large files, and can even operate in a
low-memory unbuffered mode. Many, many bugs have been fixed and a
number of additional applications now compile and run perfectly.
Even with all these changes, uClibc continues to be very small.
On x86, a default build of the uClibc C library is still just 168k.
<p>
To make things more interesting, the release also adds support for
C++ constructors and destructors. To make it easy to use uClibc
when developing C++ applications, this release also provides a
wrapper for the GNU C++ compiler. Of course, for more complex C++
applications, such as those using iostreams, a standard C++ library
(libstdc++) is required. A native GNU toolchain (binutils/gcc) that
provides libstdc++ linked with uClibc 0.9.10 will be released in the
next couple of days, so stay tuned.
<p>
The <a href="downloads/Changelog">Changelog</a>
and <a href="downloads/uClibc-0.9.10.tar.bz2">Source code</a>
for this release are available <a href="downloads/">here</a>.
<p>
<p>
<li> <b>4 February 2002, uClibc 0.9.9 Released!</b>
<br>
CodePoet Consulting is pleased to announce the immediate
availability of uClibc 0.9.9. With this release,
<a href="uClibc-apps.html">just about
everything we have tested now compiles and runs</a>. In fact,
there are now so many programs on the working application list that
rather than continue to add to this list, from now on we
will only be adding applications to the <em>not working list</em>. Most applications
on the <em>not working list</em> either require pthreads, or require
wide-character support. Work on wide-character support is
well underway, and will hopefully be moving into CVS in the next week or
two. Full pthreads support and rentrancy are on the TODO list
and are expected to be complete in the next couple of months.
<p>
The <a href="downloads/Changelog">Changelog</a>
and <a
href="downloads/uClibc-0.9.9.tar.bz2">Source code</a>
for this release are available <a href="downloads/">here</a>.
<p>
One final bit on news -- as some of you may have noticed, uclibc.org
has been a bit overloaded and somewhat slow recently. The server should
be getting colocated tomorrow, which will eliminate the speed problem.
During the move, there may be some temporary disruption of service...
<p>
Have Fun!
<p>
<li> <b>22 December 2001, uClibc 0.9.8 Released!</b>
<br>
After many months of initial development, we are pleased to announce the
release of uClibc 0.9.8. This release should be quite solid, and is very
usable. This also, hopefully, marks a transition from a slow incubation
phase to a more methodical release cycle. From now one, there should be
approximately one release per month.
<p>
The source code for this release is available
<a href="downloads/">here</a>.
<p> <li> <b>Old News</b>
<br>
<a href="old-news.html">Click here to read older news</a>.
<p>
</ul>
<!-- Begin Download section -->
<TR><TD BGCOLOR="#ccccc0" ALIGN=center>
<A NAME="download"><BIG><B>
Download
</A></B></BIG>
</TD></TR>
<TR><TD BGCOLOR="#eeeee0">
<ul>
<li> There is now a script that creates a daily snapshot tarball of uClibc and posts it on
<a href="downloads/uClibc-snapshot.tar.bz2">here</a>.
<li> uClibc also has a publicly browsable
<a href="/cgi-bin/cvsweb/uClibc/">CVS tree</a>
<li> Anonymous
<a href="cvs_anon.html">CVS access</a> is available, and
<li> For those that are actively contributing there is even
<a href="cvs_write.html">CVS write access</a>.
</ul>
<!-- Begin Applications section -->
<TR><TD BGCOLOR="#ccccc0" ALIGN=center>
<A NAME="contribute"><BIG><B>
Help Support uClibc development
</A></B></BIG>
</TD></TR>
<TR><TD BGCOLOR="#eeeee0">
Do you like uClibc? Do you need support? Do you need some feature
added to uClibc? Then why not help out? We are happy to accept
donations, provide support contracts, and implement funded feature
requests. Additionally, uClibc is looking for corporate sponsors to
assist development, pay for bandwidth, and help with hardware
donations, especially donations of hardware for non-Intel
architectures. Click here to help support uClibc and/or request
features.
<!-- Begin PayPal Logo -->
<center>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="andersen@codepoet.org">
<input type="hidden" name="item_name" value="Support uClibc and/or request features">
<input type="hidden" name="image_url" value="https://codepoet-consulting.com/images/codepoet.png">
<input type="hidden" name="no_shipping" value="1">
<input type="image" src="images/donate.png" border="0" name="submit" alt="Make donation using PayPal">
</form>
</center>
<!-- End PayPal Logo -->
If you prefer to contact us directly for payments (we have a credit card machine so
you can avoid online payments), hardware donations, support requests, etc., you can
contact <a href="http://codepoet-consulting.com/">CodePoet Consulting</a> here.
<!-- Begin TODO section -->
<TR><TD BGCOLOR="#ccccc0" ALIGN=center>
<A NAME="todo"><BIG><B>
TODO
</A></B></BIG>
</TD></TR>
<TR><TD BGCOLOR="#eeeee0">
Here are a few things on the TODO list:
<ul>
<li> Shared library support for all supported architectures.
We now have our own ld.so, but it needs to be ported to
support each architecture.
<li> Shared library support for mmu-less systems. This is
very doable (think of C++ vtables for example), but will
take some work.
<li> Someone (hopefully) needs to volunteer to take the
<a href="http://www.linuxbase.org/test/">LSB Test Suite</a>,
pull out the C library testing stuff, and convert it
(perl script, by hand, I don't care how) into a form
that is usable without having it take over your entire
system (i.e. similar to what is currently in the uClibc
test suite). This will be <em>enormously</em> helpful!
<li> other things as I think of them.
</ul>
<!-- Begin Links section -->
<TR><TD BGCOLOR="#ccccc0" ALIGN=center>
<A NAME="links">
<BIG><B>
Other Open Source C libraries:
</A>
</B></BIG>
</A>
</TD></TR>
<TR><TD BGCOLOR="#eeeee0">
<ul>
<li><a href="http://www.gnu.org/software/libc/libc.html">GNU C Library (aka glibc)</a>
<li> <a href="http://www.k9wk.com/cdoc.html">Al's FREE C Runtime Library</a>
<li><a href="http://www.fefe.de/dietlibc/">diet libc </a>
<li>the <a href="http://www.cs.vu.nl/~ast/minix.html">minix</a>
<a href="http://www.cs.vu.nl/cgi-bin/raw/pub/minix/2.0.0/src.tar"
>C library</a>
<li> <a href="http://sources.redhat.com/newlib/">newlib</a>
<li>and there is a
<a href="ftp://sourceware.cygnus.com/pub/ecos/">C library</a>, for
<a href="http://sources.redhat.com/ecos/">eCos</a> as well.
<ul>
<!-- Begin Links section -->
<TR><TD BGCOLOR="#ccccc0" ALIGN=center>
<A NAME="links">
<BIG><B>
Links to other useful stuff
</A>
</B></BIG>
</A>
</TD></TR>
<TR><TD BGCOLOR="#eeeee0">
<ul>
<li> <a href="http://www.uclibc.org/">The uClibc home page</a>
<p>
<li> <a href="http://busybox.net/">BusyBox</a>
<p>
<li> <a href="http://udhcp.busybox.net/">udhcp</a>
<p>
<li> <a href="http://www.uclinux.org/">The uClinux home page</a>
<p>
<li> <a href="http://cvs.uclinux.org/">The uClinux CVS repository</a>
<p>
<li> <a href="http://codepoet-consulting.com/">CodePoet Consulting</a>
<p>
</ul>
<!-- End of Table -->
</TD></TR>
</TABLE>
</P>
<!-- Footer -->
<HR>
<TABLE WIDTH="100%">
<TR>
<TD>
<font size="-1" face="arial, helvetica, sans-serif">
Mail all comments, insults, suggestions and bribes to
<a href="mailto:andersen@codepoet.org">Erik Andersen</a><BR>
</font>
</TD>
<TD>
<a href="http://www.vim.org"><img border=0 width=90 height=36
src="images/written.in.vi.png"
alt="This site created with the vi editor"></a>
</TD>
<TD>
<a href="http://www.gimp.org/"><img border=0 width=90 height=36
src="images/gfx_by_gimp.png" alt="Graphics by GIMP"></a>
</TD>
<TD>
<a href="http://www.linuxtoday.com"><img width=90 height=36
src="images/ltbutton2.png" alt="Linux Today"></a>
</TD>
<TD>
<p><a href="http://slashdot.org"><img width=90 height=36
src="images/sdsmall.png" alt="Slashdot"></a>
</TD>
<TD>
<a href="http://freshmeat.net"><img width=90 height=36
src="images/fm.mini.png" alt="Freshmeat"></a>
</TD>
</TR>
</TABLE>
</CENTER>
</BODY>
</HTML>
|