1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
7
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
9
<title>The Debian GNU/Linux FAQ - Compatibility issues</title>
15
<p><a name="ch-compat"></a></p>
19
[ <a href="ch-getting.en.html">previous</a> ]
20
[ <a href="index.en.html#contents">Contents</a> ]
21
[ <a href="ch-basic_defs.en.html">1</a> ]
22
[ <a href="ch-getting.en.html">2</a> ]
24
[ <a href="ch-software.en.html">4</a> ]
25
[ <a href="ch-ftparchives.en.html">5</a> ]
26
[ <a href="ch-pkg_basics.en.html">6</a> ]
27
[ <a href="ch-pkgtools.en.html">7</a> ]
28
[ <a href="ch-uptodate.en.html">8</a> ]
29
[ <a href="ch-kernel.en.html">9</a> ]
30
[ <a href="ch-customizing.en.html">10</a> ]
31
[ <a href="ch-support.en.html">11</a> ]
32
[ <a href="ch-contributing.en.html">12</a> ]
33
[ <a href="ch-redistrib.en.html">13</a> ]
34
[ <a href="ch-nexttime.en.html">14</a> ]
35
[ <a href="ch-faqinfo.en.html">15</a> ]
36
[ <a href="ch-software.en.html">next</a> ]
42
The Debian GNU/Linux FAQ
43
<br>Chapter 3 - Compatibility issues
48
<h2><a name="s-arches"></a>3.1 On what hardware architectures/systems does Debian GNU/Linux run?</h2>
51
Debian GNU/Linux includes complete source-code for all of the included
52
programs, so it should work on all systems which are supported by the Linux
53
kernel; see the <code><a
54
href="http://en.tldp.org/FAQ/Linux-FAQ/intro.html#DOES-LINUX-RUN-ON-MY-COMPUTER">Linux
55
FAQ</a></code> for details.
59
The current Debian GNU/Linux release, 4.0, contains a complete, binary
60
distribution for the following architectures:
64
<em>i386</em>: this covers PCs based on Intel and compatible processors,
65
including Intel's 386, 486, Pentium, Pentium Pro, Pentium II (both Klamath and
66
Celeron), and Pentium III, and most compatible processors by AMD, Cyrix and
71
<em>m68k</em>: this covers Amigas and ATARIs having a Motorola 680x0 processor
72
for x>=2; with MMU.
76
<em>alpha</em>: Compaq/Digital's Alpha systems.
80
<em>sparc</em>: this covers Sun's SPARC and most UltraSPARC systems.
84
<em>powerpc</em>: this covers some IBM/Motorola PowerPC machines, including
85
CHRP, PowerMac and PReP machines.
89
<em>arm</em>: ARM and StrongARM machines.
93
<em>mips</em>: SGI's big-endian MIPS systems, Indy and Indigo2;
94
<em>mipsel</em>: little-endian MIPS machines, Digital DECstations.
98
<em>hppa</em>: Hewlett-Packard's PA-RISC machines (712, C3000, L2000, A500).
102
<em>ia64</em>: Intel IA-64 ("Itanium") computers.
106
<em>s390</em>: IBM S/390 mainframe systems.
110
The development of binary distributions of Debian for Sparc64 (UltraSPARC
111
native) architectures is currently underway.
115
For further information on booting, partitioning your drive, enabling PCMCIA
116
(PC Card) devices and similar issues please follow the instructions given in
117
the Installation Manual, which is available from our WWW site at <code><a
118
href="http://www.debian.org/releases/stable/installmanual">http://www.debian.org/releases/stable/installmanual</a></code>.
123
<h2><a name="s-otherdistribs"></a>3.2 How compatible is Debian with other distributions of Linux?</h2>
126
Debian developers communicate with other Linux distribution creators in an
127
effort to maintain binary compatibility across Linux distributions. Most
128
commercial Linux products run as well under Debian as they do on the system
129
upon which they were built.
133
Debian GNU/Linux adheres to the <code><a
134
href="http://www.pathname.com/fhs/">Linux Filesystem Hierarchy
135
Standard</a></code>. However, there is room for interpretation in some of the
136
rules within this standard, so there may be slight differences between a Debian
137
system and other Linux systems.
141
Debian GNU/Linux supports software developed for the <code><a
142
href="http://www.linuxbase.org/">Linux Standard Base</a></code>. The LSB is a
143
specification for allowing the same binary package to be used on multiple
144
distributions. Packages for the Debian Etch release must not conflict with
145
requirements of the LSB, v1.3. As of this writing, Debian GNU/Linux is not
146
formally LSB-certified. However, some Debian derived distributions are.
147
Discussion and coordination of efforts towards ensuring Debian meets the
148
requirements of the Linux Standard Base is taking place on the <code><a
149
href="http://lists.debian.org/debian-lsb/">debian-lsb mailing list</a></code>.
154
<h2><a name="s-otherunices"></a>3.3 How source code compatible is Debian with other Unix systems?</h2>
157
For most applications Linux source code is compatible with other Unix systems.
158
It supports almost everything that is available in System V Unix systems and
159
the free and commercial BSD-derived systems. However in the Unix business such
160
claim has nearly no value because there is no way to prove it. In the software
161
development area complete compatibility is required instead of compatibility in
162
"about most" cases. So years ago the need for standards arose, and
163
nowadays POSIX.1 (IEEE Standard 1003.1-1990) is one of the major standards for
164
source code compatibility in Unix-like operating systems.
168
Linux is intended to adhere to POSIX.1, but the POSIX standards cost real money
169
and the POSIX.1 (and FIPS 151-2) certification is quite expensive; this made it
170
more difficult for the Linux developers to work on complete POSIX conformance.
171
The certification costs make it unlikely that Debian will get an official
172
conformance certification even if it completely passed the validation suite.
173
(The validation suite is now freely available, so it is expected that more
174
people will work on POSIX.1 issues.)
178
Unifix GmbH (Braunschweig, Germany) developed a Linux system that has been
179
certified to conform to FIPS 151-2 (a superset of POSIX.1). This technology
180
was available in Unifix' own distribution called Unifix Linux 2.0 and in
181
Lasermoon's Linux-FT.
186
<h2><a name="s-otherpackages"></a>3.4 Can I use Debian packages (".deb" files) on my Red Hat/Slackware/... Linux system? Can I use Red Hat packages (".rpm" files) on my Debian GNU/Linux system?</h2>
189
Different Linux distributions use different package formats and different
190
package management programs.
193
<dt><strong>You probably can:</strong></dt>
196
A program to unpack a Debian package onto a Linux host that is been built from
197
a `foreign' distribution is available, and will generally work, in the sense
198
that files will be unpacked. The converse is probably also true, that is, a
199
program to unpack a Red Hat or Slackware package on a host that is based on
200
Debian GNU/Linux will probably succeed in unpacking the package and placing
201
most files in their intended directories. This is largely a consequence of the
202
existence (and broad adherence to) the Linux Filesystem Hierarchy Standard.
203
The <code><a href="http://packages.debian.org/alien">Alien</a></code> package
204
is used to convert between different package formats.
209
<dt><strong>You probably do not want to:</strong></dt>
212
Most package managers write administrative files when they are used to unpack
213
an archive. These administrative files are generally not standardized.
214
Therefore, the effect of unpacking a Debian package on a `foreign' host will
215
have unpredictable (certainly not useful) effects on the package manager on
216
that system. Likewise, utilities from other distributions might succeed in
217
unpacking their archives on Debian systems, but will probably cause the Debian
218
package management system to fail when the time comes to upgrade or remove some
219
packages, or even simply to report exactly what packages are present on a
225
<dt><strong>A better way:</strong></dt>
228
The Linux File System Standard (and therefore Debian GNU/Linux) requires that
229
subdirectories under <samp>/usr/local/</samp> be entirely under the user's
230
discretion. Therefore, users can unpack `foreign' packages into this
231
directory, and then manage their configuration, upgrade and removal
239
<h2><a name="s-libc5"></a>3.5 Is Debian able to run my old libc5 programs?</h2>
242
Yes. Just install the required <code>libc5</code> libraries, from the
243
<samp>oldlibs</samp> section (containing old packages included for
244
compatibility with older applications).
249
<h2><a name="s-libc5-compile"></a>3.6 Can Debian be used to compile libc5 programs?</h2>
252
Yes. Install <code>libc5-altdev</code> and <code>altgcc</code> packages (from
253
the <samp>oldlibs</samp> section). You can find the appropriate libc5-compiled
254
<code>gcc</code> and <code>g++</code> in directory
255
<samp>/usr/i486-linuxlibc1/bin</samp>. Put them in your $PATH variable to get
256
<code>make</code> and other programs to execute these first.
260
Be aware that libc5 environment isn't fully supported by our other packages
266
<h2><a name="s-non-debian-programs"></a>3.7 How should I install a non-Debian program?</h2>
269
Files under the directory <samp>/usr/local/</samp> are not under the control of
270
the Debian package management system. Therefore, it is good practice to place
271
the source code for your program in /usr/local/src/. For example, you might
272
extract the files for a package named "foo.tar" into the directory
273
<samp>/usr/local/src/foo</samp>. After you compile them, place the binaries in
274
<samp>/usr/local/bin/</samp>, the libraries in <samp>/usr/local/lib/</samp>,
275
and the configuration files in <samp>/usr/local/etc/</samp>.
279
If your programs and/or files really must be placed in some other directory,
280
you could still store them in <samp>/usr/local/</samp>, and build the
281
appropriate symbolic links from the required location to its location in
282
<samp>/usr/local/</samp>, e.g., you could make the link
286
ln -s /usr/local/bin/foo /usr/bin/foo
290
In any case, if you obtain a package whose copyright allows redistribution, you
291
should consider making a Debian package of it, and uploading it for the Debian
292
system. Guidelines for becoming a package developer are included in the Debian
293
Policy manual (see <a href="ch-support.en.html#s-debiandocs">What other
294
documentation exists on and for a Debian system?, Section 11.1</a>).
299
<h2><a name="s-termcap"></a>3.8 Why can't I compile programs that require libtermcap?</h2>
302
Debian uses the <samp>terminfo</samp> database and the <samp>ncurses</samp>
303
library of terminal interface routes, rather than the <samp>termcap</samp>
304
database and the <samp>termcap</samp> library. Users who are compiling
305
programs that require some knowledge of the terminal interface should replace
306
references to <samp>libtermcap</samp> with references to
307
<samp>libncurses</samp>.
311
To support binaries that have already been linked with the <samp>termcap</samp>
312
library, and for which you do not have the source, Debian provides a package
313
called <code>termcap-compat</code>. This provides both
314
<samp>libtermcap.so.2</samp> and <samp>/etc/termcap</samp>. Install this
315
package if the program fails to run with the error message "can't load
316
library 'libtermcap.so.2'", or complains about a missing
317
<samp>/etc/termcap</samp> file.
322
<h2><a name="s-accelx"></a>3.9 Why can't I install AccelX?</h2>
325
AccelX uses the <samp>termcap</samp> library for installation. See <a
326
href="#s-termcap">Why can't I compile programs that require libtermcap?,
327
Section 3.8</a> above.
332
<h2><a name="s-motifnls"></a>3.10 Why do my old XFree 2.1 Motif applications crash?</h2>
335
You need to install the <code>motifnls</code> package, which provides the
336
XFree-2.1 configuration files needed to allow Motif applications compiled under
337
XFree-2.1 to run under XFree-3.1.
341
Without these files, some Motif applications compiled on other machines (such
342
as Netscape) may crash when attempting to copy or paste from or to a text
343
field, and may also exhibit other problems.
349
[ <a href="ch-getting.en.html">previous</a> ]
350
[ <a href="index.en.html#contents">Contents</a> ]
351
[ <a href="ch-basic_defs.en.html">1</a> ]
352
[ <a href="ch-getting.en.html">2</a> ]
354
[ <a href="ch-software.en.html">4</a> ]
355
[ <a href="ch-ftparchives.en.html">5</a> ]
356
[ <a href="ch-pkg_basics.en.html">6</a> ]
357
[ <a href="ch-pkgtools.en.html">7</a> ]
358
[ <a href="ch-uptodate.en.html">8</a> ]
359
[ <a href="ch-kernel.en.html">9</a> ]
360
[ <a href="ch-customizing.en.html">10</a> ]
361
[ <a href="ch-support.en.html">11</a> ]
362
[ <a href="ch-contributing.en.html">12</a> ]
363
[ <a href="ch-redistrib.en.html">13</a> ]
364
[ <a href="ch-nexttime.en.html">14</a> ]
365
[ <a href="ch-faqinfo.en.html">15</a> ]
366
[ <a href="ch-software.en.html">next</a> ]
372
The Debian GNU/Linux FAQ
376
version 3.1.5, 17 January 2007<br>
378
Authors are listed at <a href="ch-faqinfo.en.html#s-authors">Debian FAQ Authors</a><br>