HowTo Compile In Debian-es

From AMule Project FAQ
Revision as of 14:51, 27 February 2007 by Festor (Talk | contribs)

Jump to: navigation, search
English | Español

COMO compilar aMule en Debian o Ubuntu por Jacobo221 y los ayudantes GNU Linux

Traducción por seath

¡Gracias muy especiales a darknox, Arathornz, guest234, parasito, maya y klando por sus pruebas!!

NOTA: Este COMO estará enfocado también en Ubuntu Linux.

¿Está seguro de que quiere compilar?

Si no, (que es bastante común) decida si quiere la versión estable de aMule o la última versión del aMule CVS.

Versión estable de aMule

Puede instalar la última versión estable de aMule a través de los debs, para esto tiene que añadir la siguiente línea en su archivo /etc/apt/sources.list:

deb http://amule-debian.dyndns.org/ debian/

Antes de instalar una nueva version de aMule en su equipo es recomendable que borre todos los archivos de configuracion de versiones anteriores(tenga cuidado al borrar archivos, es posible que no pueda recuperarlos) con el siguiente comando:

sudo rm -R "ruta del directorio"

Estos archivos se encuentran normalmente en:

/usr/"nombre de usuario"/.aMule  
/root/.aMule

Una vez que haya borrado la configuracion de versiones anteriores ejecute apt-get update && apt-get install amule

NOTA: Si al intentar instalar aMule aparece un mensaje de error quejandose por libbfd-2.xx.so, solamente cambie a superusuario root y vaya a /usr/lib y haga ln -s libbfd.so libbfd-2.xx.so

NOTA: Esto de arriba no funcionó para mí, pero esto si: ln -s libbfd-2.16.1.so libbfd-2.15.so

NOTA: Si tiene instalado ubuntu Horazy o Dapper, synaptic dara problemas con los repositorios y las dependencias, asi que debera de instalar amule como viene explicado en el siguiente apartado.

Versión de aMule CVS

Puede conseguir la última versión de aMule CVS a través de los debs, tiene que añadir la siguiente línea en su archivo /etc/apt/sources.list:

deb http://www.vollstreckernet.de/debian/ testing amule

Ahora ejecute apt-get update && apt-get install amule

Puede que desee ver las otras utilidades disponibles para aMule:

aMule CVS

  • amule
  • amule-utils
  • amule-utils-gui
  • amule-ed2k
  • amule-cas
  • amule-wxcas
  • amule-xas
  • amule-common
  • amule-theme-default
  • amule-theme-php-default
  • amule-theme-chicane
  • amuleweb
  • amule-remote-gui
  • amule-daemon
  • amule-alc
  • amule-alcc
  • amule-cmd
  • amule-i18n-ar
  • amule-i18n-bg
  • amule-i18n-ca
  • amule-i18n-da
  • amule-i18n-de
  • amule-i18n-en-gb
  • amule-i18n-en-us
  • amule-i18n-es
  • amule-i18n-es-mx
  • amule-i18n-et-ee
  • amule-i18n-eu
  • amule-i18n-fi
  • amule-i18n-fr
  • amule-i18n-gl
  • amule-i18n-hr
  • amule-i18n-hu
  • amule-i18n-it-ch
  • amule-i18n-it
  • amule-i18n-ko-kr
  • amule-i18n-nl
  • amule-i18n-pl
  • amule-i18n-pt-br
  • amule-i18n-pt-pt
  • amule-i18n-ru
  • amule-i18n-sl
  • amule-i18n-zh-cn
  • amule-i18n-zh-tw

aMule estable

  • amule
  • amule-daemon
  • amule-remote-gui
  • amule-gui-utils (alc, wxcas)
  • amule-console-utils (amuleweb, alcc, cas)
  • amule-utils (amule-console-utils & amule-gui-utils)

Por ejemplo, si cree que la interfaz de Web del aMule es buena y desea tenerla también, ejecute la siguiente linea después de la de arriba:

Para aMule CVS: apt-get install amuleweb

Para aMule estable: apt-get install amule-console-utils

Si todavía desea compilar aMule en vez de instalar un binario, siga leyendo...

Notas antes de comenzar

Importante: Tenga en mente que este COMO fue hecho para aMule 2.0.0 o superior en Debian 3.0 (Woody/Sarge/Sid).

Este COMO está basado en la utilización de apt-get la herramienta de instalación de paquetes, lo que significa que tendrá que ser capaz de tener acceso de superusuario (root). También, apt-get requiere que las dependencias de paquetes esten perfectamente instaladas en el sistema. Si por lo general usa apt-get para para instalar cualquier aplicación, saltese esto y vaya a la siguiente sección. Si raras veces usa apt-get, pero en cambio, usa dpkg, puede;

A) (Recomendado) Soluciona todos los problemas de dependencias en su sistema. Esto puede ser hecho viendo la salida de "dpkg -C" e instalando/quitando/actualizando los paquetes que esto menciona según se requieren. Esta opción es la recomendada ya que no sólo asegurará que su compilación de aMule será la más correcta, sino que también hará su sistema lo más estable posible y desde ahora será capaz de usar apt-get no sólo para hacer las instalaciones más fáciles, sino que también mejorarara su sistema.

B) Forzar a apt-get para ignorar los problemas de dependencias usando -f o --fix-broken switches (solamente uno de estos, ya que son exactamente lo mismo, entonces podría ser, por ejemplo "apt-get install -f ..."). Esta opción puede causar una instalación corrupta de algunos paquetes que pueden hacer que la aplicación no funcione. También tenga en mente que utilizar esto pone en marcha un sistema con problemas de dependencias y puede hacer que el sistema se rompa completamente si el paquete instalado es un paquete base (aunque no es el caso).

C) Seguir estas instrucciones, pero, en vez de usar "apt-get install foo", use "dpkg -i foo" donde foo es el paquete para instalar. Recuerde que los paquetes deben ya estar en el sistema cuando instale paquetes con dpkg. Acuérdese también de descargar cualquier paquete de "Depends (dependencias)" ya que seguramente será necesario para compilar aMule satisfactoriamente. Evite usar cualquiera de las siguientes opciones de dpkg: --force-all --force-depends-version --force-depends --force-conflicts

Si por lo general instala aplicaciones desde los archivos fuente, lea deltaHF's "Compilación de aMule / Como instalación" ya que su sistema no podría conformar las dependencias del paquete del aMule de Debian aunque con "dpkg -C" no muestre ningún error.

Lo más fácil: Preparación del sistema

Una vez que decidió usar apt-get, debe asegurarse que descargará las últimas versiones de los paquetes (el equipo de aMule ha descubierto fallas en algunos paquetes de deb que harían a aMule imposible de compilar sobre Debian sin compilar algunas otras bibliotecas también. Estas fallas han sido fijadas en paquetes de debian, entonces es muy importante estar seguro de tener los paquetes actualizados). Esto se logra haciendo:

apt-get update && apt-get dist-upgrade

Nota 1: Debe ser superusuario para hacer esto. Ingrese como superusuario o como "su" o use "sudo". NB: "sudo" debe ser especificado en ambos comandos del apt-get, de esta forma:

sudo apt-get update && sudo apt-get dist-upgrade

"sudo" no es un comando base, puede que no esté instalado en su sistema, aunque lo más probable es que si. Esté enterado que siguiendo este Como enteramente como root puede traer algunos problemas más adelante, por ejemplo no poder suprimir ciertos archivos como usuario normal, entonces por favor use los privilegios de root cuando sea necesario.

Nota 2: Usuarios Woody (es decir, la gente pegada en el rama estable de Debian 3.0) no podrá instalar el wxGTK, wxbase y bibliotecas de Crypto++ puesto que no estaban disponibles en las versiones compatibles mínimas actuales (2.4.2 y 2.5.1 respectivamente) cuando Woody fue liberado.

Lo mejor para los usuarios de Woody es cambiar al rama de Sarge o de Sid. Eso se puede hacer con el siguiente comando (otra vez, usted debe ser root)

perl -pi.$$ -e "s/(\bstable|woody)/testing/g" /etc/apt/sources.list

o

perl -pi.$$ -e "s/(\bstable|woody)/sarge/g" /etc/apt/sources.list

para cambiar a la rama de Sarge/testing, o con

perl -pi.$$ -e "s/(\bstable|woody)/unstable/g" /etc/apt/sources.list

o

perl -pi.$$ -e "s/(\bstable|woody)/sid/g" /etc/apt/sources.list

para cambiar a la rama de Sid/unstable.

Si los usuarios de Woody no estan interesados en cambiar a Sarge necesitarán descargar los paquetes debian Woody-backported agregando la siguiente línea a /etc/apt/sources.list (recuerde hacer un "apt-get update" después de agregar esta línea):

deb http://debian.thermoman.de/ woody wxwindows2.4 libcrypto++

Que más, detener el trabajo de thermoman en el backports del aMule para Woody en la versión aMule 2.0.0-rc5, los lanzaminetos más nuevos de backports de aMule son inasequibles. Disculpen.

Nota 3: Los usuarios de Sarge no tendrán ningún problemas de dependencia, ya que tanto crypto++ y wxWidgets ahora han sidos colocados en Sarge. Por lo tanto ya no hay necesidad de actualizar el archivo 'sources.list en las distribuciones de Debian Sarge.

Nota 4: Los usuarios de Sid (es decir, la gente que lleva a cabo la rama inestable de Debian 3.0) podría sufrir problemas de paquetes no completamente puestos en práctica o con dependencias rotas (ambas cosas son normales en la rama inestable). Es muy importante tener esto presente puesto que un compilador (g++) será instalado y que podría estar con fallas y arrastrar las fallas a la mayoría de los paquetes que se compilaron con él (hasta que sea actualizado, desde luego). Si un paquete estuviera con fallas, para retroceder puede usar la opción --force-downgrade con dpkg.

Si por alguna razón piensa que todo esto es muy complicado, puede esperar un par de días hasta que aparezca una versión binaria de aMule para su arquitectura (como un archivo .deb)

Lo más rápido: Instalación de los paquetes necesarios

Recuerde que necesita ser superusuario (root) para instalar sus aplicaciones usando apt-get, ya que apt-get instala las aplicaciones con sus dependencias. Sino ingresa como superusuario (root), use "su" o añada "sudo" antes de cada comando mostrado aqui.

Los siguientes son los paquetes que deben ser instalados:

1) Instale el último compilador estable de g++ y la Libreria Standar de C++

apt-get install g++

las librerias requeridas para compilar aMule (wxbase realmente no es una libreria requerida para compilar aMule, pero a menos que sepa lo que está haciendo, asegurese de instalarlo. No demostraré en esta esta guía cómo forzar la compilación de aMule sin wxbase):

apt-get install libwxbase2.4-dev libcurl3-dev libgtk1.2-dev libwxgtk2.4-dev

Alternativamente puede utilizar apt-get build-dep amule para conseguir todas las dependencias requeridas para la compilación. De todas formas, este último método no es seguro que funcione, puesto que dependerá de la última versión en el depósito de Debian o las versiones de CVS que puden tener diferentes dependencias. Y una utilidad requerida para compilar aMule:

apt-get install gettext make

Nota 5: Todo esto se puede hacer en un sólo comando, lo que puede ser más comodo para los usuarios usando "sudo" para obtener privilegios de superusuario (root):

apt-get install g++ libwxbase2.4-dev libcurl3-dev libgtk1.2-dev gettext make

Nota 6: Del aMule 2.0.0-rc1 al aMule 2.0.0-rc5 (inclusive) el paquete libcrypto++-dev es necesario para compilar aMule, sólo si está compilando alguna de estas versiones, también debería hacer un apt-get libcrypto++-dev.

También, podría estar interesado en la instalación de libgd2-noxpm-dev, si planea compilar CAS (Habilitación de columna de direcciones). Esta no es una biblioteca requerida para compilar CAS (Habilitación de columna de direcciones), esta biblioteca sólo es usada por CAS (Habilitación de columna de direcciones) para crear imágenes (desde v2.0.0-rc3) sobre el estado actual de aMule (ejecutando cas -o). Si usted planea usar esta caracteristica de CAS, usted tiene que instalar LibGD2. De todos modos, CAS compilará perfectamente incluso si LibGD2 no es instalada, ya que es detectada, en tiempo de compilación, si dicha biblioteca está instalada.

Nota 7: Los usuarios de Woody probablemente no podrán conseguir libgd2-xpm-dev y libcurl3-dev ya que esos paquetes no están disponibles para Woody. Para libcurl3-dev sólo puede instalar libcurl2-dev i continuar, todo estará bien para libgd2-xpm, en este momento no hay backport disponible pero, ya que esta biblioteca es utilizada solamente por CAS (y sugerido, incluso no requerido), no dará ningún problema en tiempo de compilación. Solamente esté consciente que cas -o no funcionará.

2) Descargue la última versión del codigo fuente de aMule desde aquí (o vea aquí para actualizar el enlace).

Nota 8: Desde ahora, Supondré que estamos instalando aMule 2.0.0-rc3

3) Arreglo de la Libreria Crypto++ 5.1 if si es que la usa.

Desde aMule 2.0.0-rc1 hasta aMule 2.0.0-rc5 (inclusive) esta libreria es requerida porque aMule ahora está soportando SecureIdent (recuerde, desde aMule 2.0.0-rc6, libcrypto++ es opcional y no se necesita por defecto), pero el paquete de Crypto++ Debian ha tenido fallas de compilación y todavía tiene una (aunque el resto se han descubierto después de los informes del equipo del aMule). Recuerde que debe hacer un update y un dist-upgraded con apt-get antes de instalar cualquier paquete de Debian en este Como, si no, usted podría instalar (o haber instalado ya) un paquete Crypto++ con fallas y este problema no satisfará sus necesidades. Para arreglar el último paquete de crypto++ Debian sólo es necesario un enlace simbólico:

ln -s /usr/include/crypto++/cryptopp_config.h /usr/include/crypto++/config.h

Si todavía no puede compilar crypto++, intente compilarlo después de ejecutar el siguiente comando:

ln -s /usr/include/crypto++ /usr/include/cryptopp

Nota 9: Ya que este enlace necesita permisos de escritura en /usr/lib, los privilegios de superusuario (root) son necesarios. Una vez más esto se puede hacer facilmete con "su" o "sudo".

Usando wxWidgets 2.6

Los usuarios de Etch y Sid pueden usar wxWidgets 2.6 en lugar de wxWidgets 2.4 (los usuarios de Woody y Sarge olvidadlo. Pasad directamente al capítulo siguiente).

Para usar wxWidgets 2.6 en lugar de 2.4, simplemente reemplazad en los comandos menionados hasta ahora los términos libwxbase2.4-dev y libwxgtk2.4-dev por libwxbase2.6-dev y libwxgtk2.6-dev respectivamente.

Si se debe o no usar wx 2.6 en lugar de wx 2.4 es una decision personal. Tiene ventajas y desventajas. De todas maneras, en la mayoría de casos, se agradece usar wx 2.6, así que está recomendado.

Lo más duro: Compilación aMule

4) Extraiga las fuentes. Lo siguiente creará una carpeta en el directorio home de su usuario donde extraerá las fuentes con la opción -C en ella (el siguiente comando entiende que las fuentes de aMule están en el directorio actual):

mkdir ~/aMule-compilation/ && tar xzfv aMule-2.0.0rc3.tar.gz -C ~/aMule-compilation/ && cd ~/aMule-compilation/

Nota 10: Recuerde que estoy suponiendo que está extrayendo aMule 2.0.0-rc3. Cambie el nombre de archivo si no corresponde con el nombre del archivo del codigo fuente.

5) ¡Compile aMule! El siguiente comando cambiará al directorio que contiene aMule 2.0.0rc3 y lo compilará:

cd ~/aMule-compilation/aMule-2.0.0rc3/ && ./configure && make

Nota 11: Por favor vea el articulo de configuración.

Nota 12: Usted debe comprobar la salida de

./configure --help | more

para ver si hay cualquier cambio en la configuración que puede ser de su interés, por ejemplo --disable-debug --enable-optimise o --bindir=

Nota 13: si aparece un mensaje de error, mientras compila, similar a: "In file included from /usr/include/wx/***:***, [...] /usr/include/wx/******:***: internal compiler error: Segmentation fault", lo más probable es que tenga problemas con wxWidgets. Intente con

apt-get install --reinstall wxwin2.4-headers libwxbase2.4 libwxgtk2.4-dev

el cuál reinstalará wxWidgets y probablemente arreglará el error de compilación.

Reunión de satisfacción: ¡Instalación de aMule!

8) ¿Qué es falta? Instale aMule (recuerde que usted debe ser superusuario (root), entonces conéctese como la superusuario (root) o use code>"su"</code> o "sudo"):

make install

Ahora puede remover los fuentes para liberar espacio en el disco duro, debe ejecutar:

rm -rf ~/aMule-compilation/

El final: Comprobaciónes finales

Si usted alguna vez ha instalado aMule de los paquetes de Debian (no importa si el paquete viene de http://gunnm.org/~soda), usted tendrá binarios aMule instalados en /usr/bin. Pero "make install" instala binarios en /usr/local/bin (a no ser que --prefix= sea puesto en la configuración). Esto nos conduce al punto que escribiendo "amule" alguna de las dos versiones de aMule podría ser invocada para instalarse (cual es ejecutado dependerá de la variable de ambiente $PATH. Usted puede comprobarlo escribiendo "type amule"). El paso siguiente es muy fácil: quite el aMule instalado por el paquete de Debian. Puede hacer esto con el comando "apt-get remove amule" (no use "apt-get remove --purge" o podría perder sus ajustes de aMule) o con "dpkg --remove amule" (otra vez, nunca use "dpkg --purge" o usted podría perder sus ajustes de aMule). apt-get quitará aMule-utils si usted lo tiene instalado (sólo disponible como un paquete separado en Sid, en Sarge y en Woody aMule utils es incluido en el paquete base de aMule) mientras dpkg dejará aMule-utils instalado en el sistema (que en general, es una mala idea).

También, si instaló xmule o algún día piensa instalarlo, debe tener en mente esto: el ed2k command existe tanto en aMule como xMule. Usted podría querer ejecutar `type ed2k` para ver cuál ed2k command será ejecutado y renombrar el otro, entonces se asegura que nunca sea ejecutado por equivocación).


Está terminando...

¡Esto es todo! Su propio aMule compilado está instalado en su sistema y listo para funcionar.

Para ejecutar aMule, solamente escriba "amule". Usted puede comprobar si todo está trabajado, escribiendo "amule -v" y comprueba si la versión mostrada está en correspondencia con la que usted compilo/instalo.

Si este Como no ayudara, usted tiene un problema raro en su sistema;-) Mire en http://www.amule.org (Foros de aMule en http://forum.amule.org ) o nos visita en #amule en irc.freenode.net y (no lo dúde) trataremos de hacer todo lo posible para ayudarle.

Notas finales

Si usted está en uno de aquellos casos raros cuando usted desea compilar aMule estáticamente, instalar también libtiff4-dev (por apt-get install libtiff4-dev). De todos modos, esto NO es recomendado y de hecho, probablemente no hará ninguna mejora o hasta, no trabajan en nada.