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
|
<sect>Cuestiones de Compatibilidad <label id="Compatibility">
<P>
<sect1>Cun compatible es Debian con otras distribuciones de Linux?
<label id="other distribs">
<P>
Los desarrolladores de Debian se comunican con otros creadores de
distribuciones de Linux, en un esfuerzo para mantener la
compatibilidad binaria entre las distintas distribuciones. La mayora
de los productos comerciales corren tan bien sobre Debian como lo
hacen sobre los sistemas en los cuales se compilaron.
<P>
Debian GNU/Linux se adhiere a la Estructura de Sistema
de Ficheros Linux
<!-- XXX update to FHS when it is ready -->
<url url="http://www.pathname.com/fhs/" name="(Linux File System Structure)">
Sin embargo, hay espacio para la interpretacin en algunas de las
reglas que componen esta norma, por lo cual puede haber diferencias
entre un sistema Debian y otros sistemas Linux.
La versin ms moderna de este estndar FSSTND se llama ahora
FHS y tenemos pensado pasarnos a ella en breve.
<sect1>
Cun compatible es Debian en cdigo fuente con otros sistemas Unix? <label id="other Unices">
<P>
El cdigo fuente Linux de la mayora de las aplicaciones es compatible
con otros sistemas Unix. Casi todo lo que est disponible en los
sistemas Unix System V, y en los sistemas comerciales o libres
derivados de BSD, tambin puede funcionar en Linux. Sin embargo, tal
asercin no tiene ningn valor en el mercado comercial de Unix, pues
no hay manera de probarla. En el mbito del desarrollo de software,
se requiere una compatibilidad completa, y no slo en &dquot;casi
todos&dquot; los casos. Por ese motivo, hace algunos aos surgi la
<!--
algunos aos atrs -> hace algunos aos. svd
-->
necesidad de normas, y en la actualidad la POSIX.1 (IEEE Standard
1003.1-1990) es una de las normas ms importantes sobre compatibilidad
de cdigo fuente en los sistemas operativos al estilo Unix.
Linux est encaminado a adherirse a POSIX.1, pero las normas POSIX
cuestan dinero, y la certificacin POSIX.1 (y FIPS 151-2) es
bastante cara; esto ha hecho ms difcil el trabajo de los desarrolladores
de Linux para obtener completa conformidad POSIX. Los costes de
certificacin hacen poco probable que Debian obtenga un
certificado de conformidad oficial, an cuando complete
satisfactoriamente el conjunto de pruebas de validacin. (El conjunto
de pruebas de validacin puede obtenerse libremente en la actualidad,
as que se espera que ms gente trabaje en los temas de POSIX.1.)
<!--
<P>
<bf>(The authors would very much like to
give you a pointer to an on-line document that described that standard,
but the IEEE is another one of those organizations that gets away with
declaring standards and then requiring that people PAY to find out what
they are. This makes about as much sense as having to find out the
significance of various colored lights on traffic signals.)</bf>
-->
<P>
Unifix GmbH (Braunschweig, Alemania) desarroll un sistema Linux que ha
sido certificado como conforme a la norma FIPS 151-2 (que es un
superconjunto de POSIX.1). Esta tecnologa estuvo disponible en la
propia distribucin de Unifix, denominada Unifix Linux 2.0 y en la
distribucin Linux-FT de Lasermoon.
<!-- Creo que Lasermoon quebr, pero en cualquier caso lo que sigue
es un enlace colgado:
<url url="http://www.lasermoon.co.uk/linux-ft/linux-ft.html"
name="Linux-FT">. En la actualidad, Unifix est aportando sus parches
al ncleo de Linux, gcc y otras herramientas; por lo
tanto, se espera que sus enmiendas que apuntan hacia la conformidad
POSIX.1 estn disponibles en Debian (y otras distribuciones).
-->
<sect1>Puedo utilizar los paquetes Debian (los ficheros &dquot;.deb&dquot;) en mi sistema Linux RedHat/Slackware/...? Puedo utilizar los paquetes RedHat (los ficheros &dquot;.rpm&dquot;) en mi sistema Debian GNU/Linux? <label id="other packages">
<P>
Las diferentes distribuciones de Linux utilizan distintos formatos de
paquete y distintos programas de administracin de paquetes.
<!-- stupid tags -->
<descrip>
<tag/Usted probablemente puede:/Hay disponible un programa que permite
desempaquetar un paquete Debian en una mquina que se ha instalado con
una distribucin `extraa', y generalmente funciona, en el sentido en
que desempaquetar los ficheros. Lo contrario posiblemente es cierto
<!--
The converse -> lo contrario. svd
-->
tambin, esto es, un programa que desempaquete un
paquete RedHat o Slackware en una mquina basada en Debian Linux
probablemente tendr xito desempaquetando el paquete y colocando la
mayora de los ficheros en los directorios deseados. La causa de
este xito puede encontrarse mayormente en la existencia de (y la
amplia adhesin a) la Norma de Sistema de Ficheros Linux (Linux File
System Standard).
<!--
Por qu no "estndar"? svd
-->
<P>
<tag/Usted probablemente no quiera:/La mayora de los administradores
de paquetes escriben ficheros administrativos cuando se utilizan para
desempaquetar un archivo. Dichos ficheros administrativos en general
no estn estandarizados. Por lo tanto, el efecto de desempaquetar un
paquete Debian en un entorno `extrao' puede tener efectos
impredecibles (ciertamente no muy tiles) sobre el administrador de
paquetes de dicho entorno. De la misma manera, las utilidades
provenientes de otras distribuciones pueden tener xito al
desempaquetar sus archivos en un sistema Debian, pero probablemente
causarn un fallo del sistema de administracin de paquetes de Debian
<!--
la falla ?? svd
-->
cuando llegue el momento de actualizar o borrar algunos paquetes, o
incluso si se desea simplemente un informe exacto de los paquetes
presentes en el sistema.
<P>
<tag/El mejor camino:/La Norma de Sistema de Ficheros Linux
(y por lo tanto Debian GNU/Linux) requiere que los
subdirectorios bajo <tt>/usr/local/</tt> se usen enteramente a
discrecin del usuario. As que los usuarios pueden desempaquetar
paquetes `extraos' en este directorio, y luego administrar sus
configuraciones, actualizarlos y borrarlos individualmente.
</descrip>
<P>
<!--
It would be useful to document all the ways in which Debian and RedHat
systems differ. I believe such a document would do a lot to dispell
fears of using a Unix system. SGK
-->
<sect1>Es capaz Debian de ejecutar mis viejos programas &dquot;a.out&dquot;?
<label id="a.out">
<P>
Todava tiene un programa as?
Para <em>ejecutar</em> un programa cuyo binario est en formato <tt>a.out</tt>
(i.e., QMAGIC o ZMAGIC),
<itemize>
<item>Asegrese de que su ncleo tenga soporte <tt>a.out</tt>
<!--
Asegrurese *de* que... svd
-->
incluido, ya sea directamente (CONFIG_BINFMT_AOUT=y) o como
mdulo (CONFIG_BINFMT_AOUT=m). (el paquete kernel-image de Debian contiene
el mdulo <tt>binfmt_aout</tt>.)
<P>
Si su ncleo soporta binarios <tt>a.out</tt> mediante mdulos,
entonces debe asegurarse de que est cargado el mdulo
<tt>binfmt_aout</tt>. Puede hacer esto en el momento del arranque si
tiene una lnea que diga <tt>binfmt_aout</tt> en el fichero
<tt>/etc/modules</tt>. Puede tambin hacerlo desde la lnea de
rdenes si ejecuta <tt>insmod NOMBREDIR/binfmt_aout.o</tt> donde
<tt>NOMBREDIR</tt> es el nombre del directorio donde se almacenan
los mdulos construdos para la versin del ncleo que est
corriendo. En un sistema con la versin &kernelversion; del ncleo es probable que
<tt>NOMBREDIR</tt> sea <tt>/lib/modules/&kernelversion;/fs/</tt>.
<item>Instale el paquete <tt>libc4</tt>.
<p>
En el momento en el que se salga Debian 2.0, es muy probable que el paquete
<tt>libc4</tt> haya sido eliminado de la distribucin. Si este es el caso,
usted podra querer buscar un CD-ROM de Debian antiguo (Debian 1.3.1
todava tena este paquete).
<item>Si el programa que desea ejecutar es un cliente X
<tt>a.out</tt>, entonces instale tambin el paquete <tt>xcompat</tt>.
</itemize>
<P>
Si tiene una aplicacin comercial en formato <tt>a.out</tt>, puede ser el
momento de pedir que le enven una actualizacin a formato <tt>ELF</tt>.
<P>
<!--
Hoy en da, el inters de esto es muy escaso, as que esto lo comento. svd
<sect1>Puede utilizarse Debian para compilar programas &dquot;a.out&dquot;?
<P>
Para <em>compilar</em> programas en el formato binario <tt>a.out</tt>,
<itemize>
<item>Instale los paquetes de desarrollo Debian para formato
<tt>a.out</tt>, los cuales son:
<itemize>
<item><tt>libc4-dev</tt>
<item><tt>aout-binutils</tt>
<item><tt>aout-librl</tt>
<item><tt>aout-gcc</tt>
</itemize>
<item>Coloque las herramientas <tt>a.out</tt> antes que las
<tt>ELF</tt> en su ruta (PATH). Esto es, ejecute la orden
<tt>export PATH=/usr/i486-linuxaout/bin:$PATH</tt>
(Esto no es esencial, slo ventajoso.)
Si slo lo va a utilizar una vez, sera suficiente con:
<tt>PATH=/usr/i486-linuxaout/bin:$PATH make [objetivo]</tt>.
</itemize>
-->
<sect1>Puede Debian ejecutar mis programas libc5 antiguos?
<P>
S. Simplemente, instale las bibliotecas necesarias de la seccin
<tt>oldlibs</tt>, que se incluyen en Debian 2.0 para conseguir
compatibilidad con aplicaciones antiguas.
<sect1>Puede utilizarse Debian para compilar programas libc5?
<P>
S. En Debian, el sistema puede estar completamente actualizado a libc6
(incluyendo los paquetes de desarrollo), y an as es posible desarrollar
programas para libc5. Simplemente instale los paquetes <tt>-altdev</tt>
necesarios. El conjunto mnimo de paquetes que necesitar es:
<tt>altgcc</tt>, en la seccin <tt>devel</tt> y <tt>libc5-altdev</tt> en
la seccin <tt>oldlibs</tt>.
Entonces tiene que colocar las herramientas <tt>libc5</tt>
antes que las normales en el PATH. Esto es, ejecute
la orden <tt>export PATH=/usr/i486-linuxlibc1/bin:$PATH</tt>
(Esto no es esencial, slo ventajoso).
Si slo lo va a utilizar una vez, sera suficiente con:
<tt>PATH=/usr/i486-linuxlibc1/bin:$PATH make [objetivo]</tt>.
<sect1>Cmo debera instalar un paquete que no es Debian?
<label id="non-Debian programs">
<P>
Los ficheros bajo el directorio <tt>/usr/local/</tt> no estn bajo el
control del sistema de administracin de paquetes de Debian. Por lo
tanto, es una buena prctica
<!-- XXX /usr/local/src ???
S, creo que es correcto. svd
-->
colocar el cdigo fuente de su programa en <tt>/usr/local/src/</tt>.
<!-- Discrepancia con el original: No hay tt en ^^^. svd -->
Por ejemplo, puede extraer los ficheros de un paquete denominado
&dquot;fu.tar&dquot; dentro del directorio
<tt>/usr/local/src/fu</tt>. Despus de compilarlo, coloque los
ejecutables en <tt>/usr/local/bin/</tt>, las bibliotecas en
<tt>/usr/local/lib/</tt>, y los ficheros de configuracin en
<tt>/usr/local/etc/</tt>.
<P>
Si sus programas y/o ficheros realmente deben situarse en algn otro
directorio, an puede colocarlos bajo el directorio
<tt>/usr/local/</tt>, y crear los enlaces simblicos en los lugares
necesarios que apunten al lugar de instalacin en
<tt>/usr/local/</tt>, por ejemplo, puede crear el enlace
<verb>ln -s /usr/local/bin/fu /usr/bin/fu</verb>
<P>
En cualquier caso, si el paquete que obtuvo permite la redistribucin
en su licencia, debera considerar la posibilidad de construir un
paquete Debian de l, y enviarlo para que forme parte del sistema
Debian. Las instrucciones para convertirse en desarrollador de
paquetes se encuentran en el <ref id="DebianDocs" name="manual de
normas de Debian">.
<sect1>Por qu no puedo compilar programas que requieren libtermcap?
<label id="termcap">
<P>
Debian usa la base de datos <tt>terminfo</tt> y la biblioteca
<tt>ncurses</tt> para manejar la interfaz del terminal, en lugar de la
base de datos <tt>termcap</tt> y la biblioteca <tt>termcap</tt>. Los
usuarios que compilen programas que requieran conocimiento de la
interfaz del terminal deben reemplazar las referencias a
<tt>libtermcap</tt> con referencias a <tt>libncurses</tt>.
<P>
Para dar soporte a los ejecutables que hayan sido enlazados con la
biblioteca <tt>termcap</tt>, y de los cuales no tenga el cdigo
fuente, Debian proporciona un paquete denominado
<tt>termcap-compat</tt>. ste provee tanto el fichero
<tt>libtermcap.so.2</tt> como <tt>/etc/termcap</tt>. Instale este
paquete si el programa falla al ejecutarse con el mensaje de error
&dquot;can't load library 'libtermcap.so.2'&dquot;, o se queja de que
no encuentra el fichero <tt>/etc/termcap</tt>.
<sect1>Por qu no puedo instalar AccelX?
<label id="AccelX">
<P>
AccelX usa la biblioteca <tt>termcap</tt> durante su instalacin. Vea <ref
id="termcap" name="acerca de termcap"> ms arriba.
<sect1>Por qu me da el mensaje de error &dquot;Can't find libX11.so.6&dquot; cuando trato de ejecutar <tt>fu</tt>?
<P>
Este mensaje de error puede significar que el programa est enlazado
con la versin <tt>libc5</tt> de las bibliotecas X11. En este caso
necesitar instalar el paquete <tt>xlib6</tt>, de la seccin
<tt>oldlibs</tt>.
<sect1>Puedo instalar y compilar un ncleo sin `retoques' especficos para Debian?
<P>
S. Pero debe comprender antes las reglas que tiene Debian acerca de
los ficheros de encabezado (headers).
<P>
Las bibliotecas C de Debian se construyen con las ltimas entregas
<em>estables</em> de los ficheros de encabezado de <tt>gcc</tt>. Por
ejemplo, la distribucin Debian-1.2 us la versin 5.4.13 de los
ficheros de encabezado. Esta prctica contrasta con los paquetes de fuentes
del ncleo que se archivan en todos los sitios FTP de Linux, que
utilizan versiones an ms nuevas de los ficheros de encabezado. Los
encabezados del ncleo que se distribuyen junto con los fuentes de
dicho ncleo se encuentran alojados en
<tt>/usr/include/linux/include/</tt>.
<P>
Si necesitara compilar un programa con encabezados de ncleo ms
nuevos que los provistos por <tt>libc6-dev</tt>, entonces tendr que
agregar <tt>-I/usr/src/linux/include/</tt> a la lnea de rdenes al
compilar. Esto sucede en una situacin, por ejemplo, con el
paquete del demonio de automontaje (automounter daemon)
(<tt>amd</tt>). Cuando los nuevos ncleos cambian las cuestiones
internas que manejan el NFS, <tt>amd</tt> necesita enterarse de
tales cambios. Para ello requiere la inclusin de las ltimas
versiones de los encabezados del ncleo.
|