7 de enero de 2008

Instalar AMSN 0.97 en Debian Etch

Recientemente la gente del proyecto amsn-project han sacado la versión 0.97 final del AMSN. En el mes de julio publiqué una guía para instalar la versión 0.97 RC1, que como se ha quedado obsoleta, voy a detallar los pasos para actualizarnos a la última versión.

1. Nos logueamos como usuario root y descargamos el paquete con el código fuente.
$ su -
password:

# wget http://mesh.dl.sourceforge.net/sourceforge/amsn/amsn-0.97.2.tar.bz2
--17:50:42-- http://mesh.dl.sourceforge.net/sourceforge/amsn/amsn-0.97.2.tar.bz2
=> `amsn-0.97.tar.bz2'
Resolviendo prdownloads.sourceforge.net... 193.206.140.34
Connecting to prdownloads.sourceforge.net|193.206.140.34|:80... conectado.
Petición HTTP enviada, esperando respuesta... 200 OK
Longitud: 10,131,843 (9.7M) [application/x-bzip2]

100%[================================================================================================================>] 10,131,843 104.24K/s ETA 00:00

17:52:20 (101.84 KB/s) - `amsn-0.97.2.tar.bz2' saved [10131843/10131843]


2. Descomprimimos el código fuente e instalamos los dependencias necesarios para construir el paquete .deb correspondiente:
# bzip2 -dc amsn-0.97.2.tar.bz2 | tar -xv

Nos habrá creado el directorio amsn-0.97.2

# aptitude install docker imlib-base imlib11 sox tcltls tcl8.4-dev tk8.4-dev libpng12-dev libjpeg62-dev debhelper fakeroot g++


3. Accedemos al directorio donde descomprimimos las fuentes y construimos el paquete .deb que luego instalaremos:

# cd amsn-0.97/

# ./configure
checking for prefix by checking for wish... /usr/bin/wish
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking tcl build dir... using tcl library in /usr/lib/tcl8.4
checking tk build dir... using tk library in /usr/lib/tk8.4
checking for main in -lstdc++... yes
checking how to run the C preprocessor... gcc -E
checking for X... libraries , headers
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for png_read_info in -lpng... yes
checking png.h usability... yes
checking png.h presence... yes
checking for png.h... yes
checking for jpeg_CreateDecompress in -ljpeg... yes
checking jpeglib.h usability... yes
checking jpeglib.h presence... yes
checking for jpeglib.h... yes
checking jerror.h usability... yes
checking jerror.h presence... yes
checking for jerror.h... yes
checking for ftello... yes
checking for fseeko... yes
checking for getpt... yes
checking for strcasestr... yes
checking for memmem... yes
checking for dlopen... no
checking for pthread_create in -lpthread... yes
checking if mmx should be used... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating utils/linux/capture/config.h

compile time options summary
============================

X11 : yes
Tcl : 8.4
TK : 8.4
DEBUG : no
STATIC : no

# make deb
CXX utils/TkCximage/src/TkCximage.cpp.o
CXX utils/TkCximage/src/PhotoFormat.cpp.o
CXX utils/TkCximage/src/procs.cpp.o
CXX utils/TkCximage/src/CxImage/ximadsp.cpp.o
CXX utils/TkCximage/src/CxImage/ximaexif.cpp.o
CXX utils/TkCximage/src/CxImage/ximagif.cpp.o
CXX utils/TkCximage/src/CxImage/ximainfo.cpp.o
CXX utils/TkCximage/src/CxImage/ximajpg.cpp.o
CXX utils/TkCximage/src/CxImage/ximalyr.cpp.o
CXX utils/TkCximage/src/CxImage/ximapng.cpp.o
CXX utils/TkCximage/src/CxImage/ximatga.cpp.o
CXX utils/TkCximage/src/CxImage/ximatran.cpp.o
CXX utils/TkCximage/src/CxImage/ximabmp.cpp.o
CXX utils/TkCximage/src/CxImage/ximaenc.cpp.o
CXX utils/TkCximage/src/CxImage/ximage.cpp.o
CXX utils/TkCximage/src/CxImage/ximahist.cpp.o
CXX utils/TkCximage/src/CxImage/ximaint.cpp.o
CXX utils/TkCximage/src/CxImage/ximalpha.cpp.o
CXX utils/TkCximage/src/CxImage/ximapal.cpp.o
CXX utils/TkCximage/src/CxImage/ximasel.cpp.o
CXX utils/TkCximage/src/CxImage/ximath.cpp.o
CXX utils/TkCximage/src/CxImage/xmemfile.cpp.o
AR utils/TkCximage/src/CxImage/libCxImage.a
ar: creando utils/TkCximage/src/CxImage/libCxImage.a
LDX utils/TkCximage/src/TkCximage.cpp.so
LDX utils/TkCximage/src/TkCximage.cpp.so
cp utils/TkCximage/src/TkCximage.cpp.so utils/TkCximage/TkCximage.so
CC utils/webcamsn/src/webcamsn.o
CC utils/webcamsn/src/kidhash.o
CC utils/webcamsn/src/bitstring.o
CC utils/webcamsn/src/deblock.o
CC utils/webcamsn/src/encode.o
CC utils/webcamsn/src/idct_dequant.o
CC utils/webcamsn/src/mimic.o
CC utils/webcamsn/src/vlc_decode.o
CC utils/webcamsn/src/colorspace.o
CC utils/webcamsn/src/decode.o
CC utils/webcamsn/src/fdct_quant.o
CC utils/webcamsn/src/vlc_common.o
CC utils/webcamsn/src/vlc_encode.o
AR utils/webcamsn/src/libmimic.a
ar: creando utils/webcamsn/src/libmimic.a
LD utils/webcamsn/src/webcamsn.so
cp utils/webcamsn/src/webcamsn.so utils/webcamsn/webcamsn.so
CC utils/tcl_siren/src/tcl_siren.o
CC utils/tcl_siren/src/common.o
CC utils/tcl_siren/src/dct4.o
CC utils/tcl_siren/src/encoder.o
CC utils/tcl_siren/src/decoder.o
CC utils/tcl_siren/src/huffman.o
CC utils/tcl_siren/src/rmlt.o
AR utils/tcl_siren/src/libsiren.a
ar: creando utils/tcl_siren/src/libsiren.a
LD utils/tcl_siren/src/tcl_siren.so
cp utils/tcl_siren/src/tcl_siren.so utils/tcl_siren/tcl_siren.so
CC utils/linux/capture/capture.o
CC utils/linux/capture/libng/grab-ng.o
CC utils/linux/capture/libng/devices.o
CC utils/linux/capture/libng/writefile.o
CC utils/linux/capture/libng/parse-mpeg.o
CC utils/linux/capture/libng/parse-dvb.o
CC utils/linux/capture/libng/color_common.o
CC utils/linux/capture/libng/color_packed.o
CC utils/linux/capture/libng/color_lut.o
CC utils/linux/capture/libng/color_yuv2rgb.o
CC utils/linux/capture/libng/convert.o
CC utils/linux/capture/libng/misc.o
AR utils/linux/capture/libng/libng.a
ar: creando utils/linux/capture/libng/libng.a
LD utils/linux/capture/capture.so
CC utils/linux/capture/libng/plugins/conv-mjpeg.o
LD utils/linux/capture/libng/plugins/conv-mjpeg.so
CC utils/linux/capture/libng/plugins/drv0-v4l2.o
CC utils/linux/capture/libng/plugins/struct-v4l2.o
CC utils/linux/capture/libng/plugins/struct-dump.o
LD utils/linux/capture/libng/plugins/drv0-v4l2.so
CC utils/linux/capture/libng/plugins/drv1-v4l.o
CC utils/linux/capture/libng/plugins/struct-v4l.o
LD utils/linux/capture/libng/plugins/drv1-v4l.so
CC utils/linux/capture/libng/plugins/sn9c10x.o
LD utils/linux/capture/libng/plugins/sn9c10x.so
CC utils/linux/traydock/libtray.o
LD utils/linux/traydock/libtray.so
CC utils/linux/linflash/flash.o
LD utils/linux/linflash/flash.so
mkdir -p ./distrib/DEB
sed "s/#VERSION#/0.97-1/" debian/changelog.in > debian/changelog
fakeroot debian/rules clean
make[1]: se ingresa al directorio `/home/domi/amsn-0.97'
dh_testdir
dh_testroot
rm -f build-stamp
# Add here commands to clean up after the build process.
/usr/bin/make clean
make[2]: se ingresa al directorio `/home/domi/amsn-0.97'
find . -name \*~ -print | xargs rm -f
find . -name \*.o -print | xargs rm -f
find . -name \*.a -print | xargs rm -f
find . -name \*.dep -print | xargs rm -f
rm -f ./utils/TkCximage/src/TkCximage.cpp.so ./utils/TkCximage/src/TkCximage.cpp.o ./utils/TkCximage/src/PhotoFormat.cpp.o ./utils/TkCximage/src/procs.cpp.o ./utils/TkCximage/src/CxImage/libCxImage.a
rm -f ./utils/TkCximage/src/TkCximage.cpp.so ./utils/TkCximage/src/TkCximage.cpp.o ./utils/TkCximage/src/PhotoFormat.cpp.o ./utils/TkCximage/src/procs.cpp.o ./utils/TkCximage/src/CxImage/libCxImage.a
rm -f ./utils/TkCximage/src/TkCximage.cpp.so ./utils/TkCximage/src/TkCximage.cpp.o ./utils/TkCximage/src/PhotoFormat.cpp.o ./utils/TkCximage/src/procs.cpp.o ./utils/TkCximage/src/CxImage/libCxImage.a
rm -f ./utils/TkCximage/src/CxImage/libCxImage.a ./utils/TkCximage/src/CxImage/ximadsp.cpp.o ./utils/TkCximage/src/CxImage/ximaexif.cpp.o ./utils/TkCximage/src/CxImage/ximagif.cpp.o ./utils/TkCximage/src/CxImage/ximainfo.cpp.o ./utils/TkCximage/src/CxImage/ximajpg.cpp.o ./utils/TkCximage/src/CxImage/ximalyr.cpp.o ./utils/TkCximage/src/CxImage/ximapng.cpp.o ./utils/TkCximage/src/CxImage/ximatga.cpp.o ./utils/TkCximage/src/CxImage/ximatran.cpp.o ./utils/TkCximage/src/CxImage/ximabmp.cpp.o ./utils/TkCximage/src/CxImage/ximaenc.cpp.o ./utils/TkCximage/src/CxImage/ximage.cpp.o ./utils/TkCximage/src/CxImage/ximahist.cpp.o ./utils/TkCximage/src/CxImage/ximaint.cpp.o ./utils/TkCximage/src/CxImage/ximalpha.cpp.o ./utils/TkCximage/src/CxImage/ximapal.cpp.o ./utils/TkCximage/src/CxImage/ximasel.cpp.o ./utils/TkCximage/src/CxImage/ximath.cpp.o ./utils/TkCximage/src/CxImage/xmemfile.cpp.o
rm -f ./utils/webcamsn/src/webcamsn.so ./utils/webcamsn/src/webcamsn.o ./utils/webcamsn/src/kidhash.o ./utils/webcamsn/src/libmimic.a
rm -f ./utils/webcamsn/src/webcamsn.so ./utils/webcamsn/src/webcamsn.o ./utils/webcamsn/src/kidhash.o ./utils/webcamsn/src/libmimic.a
rm -f ./utils/tcl_siren/src/libsiren.a ./utils/tcl_siren/src/common.o ./utils/tcl_siren/src/dct4.o ./utils/tcl_siren/src/encoder.o ./utils/tcl_siren/src/decoder.o ./utils/tcl_siren/src/huffman.o ./utils/tcl_siren/src/rmlt.o
rm -f ./utils/tcl_siren/src/libsiren.a ./utils/tcl_siren/src/common.o ./utils/tcl_siren/src/dct4.o ./utils/tcl_siren/src/encoder.o ./utils/tcl_siren/src/decoder.o ./utils/tcl_siren/src/huffman.o ./utils/tcl_siren/src/rmlt.o
rm -f ./utils/tcl_siren/src/tcl_siren.so ./utils/tcl_siren/src/tcl_siren.o ./utils/tcl_siren/src/libsiren.a
rm -f ./utils/linux/capture/capture.so
rm -f ./utils/linux/capture/libng/libng.a ./utils/linux/capture/libng/grab-ng.o ./utils/linux/capture/libng/devices.o ./utils/linux/capture/libng/writefile.o ./utils/linux/capture/libng/parse-mpeg.o ./utils/linux/capture/libng/parse-dvb.o ./utils/linux/capture/libng/color_common.o ./utils/linux/capture/libng/color_packed.o ./utils/linux/capture/libng/color_lut.o ./utils/linux/capture/libng/color_yuv2rgb.o ./utils/linux/capture/libng/convert.o ./utils/linux/capture/libng/misc.o
rm -f ./utils/linux/capture/libng/plugins/conv-mjpeg.so ./utils/linux/capture/libng/plugins/drv0-v4l2.so ./utils/linux/capture/libng/plugins/drv1-v4l.so ./utils/linux/capture/libng/plugins/sn9c10x.so
rm -f ./utils/linux/traydock/libtray.so ./utils/linux/traydock/libtray.o
rm -f ./utils/linux/linflash/flash.so ./utils/linux/linflash/flash.o
make[2]: se sale del directorio `/home/domi/amsn-0.97'
dh_clean
make[1]: se sale del directorio `/home/domi/amsn-0.97'
fakeroot debian/rules binary VERSION=0.97-1
make[1]: se ingresa al directorio `/home/domi/amsn-0.97'
dh_testdir
# Add here commands to compile the package.
/usr/bin/make
make[2]: se ingresa al directorio `/home/domi/amsn-0.97'
CXX utils/TkCximage/src/TkCximage.cpp.o
CXX utils/TkCximage/src/PhotoFormat.cpp.o
CXX utils/TkCximage/src/procs.cpp.o
CXX utils/TkCximage/src/CxImage/ximadsp.cpp.o
CXX utils/TkCximage/src/CxImage/ximaexif.cpp.o
CXX utils/TkCximage/src/CxImage/ximagif.cpp.o
CXX utils/TkCximage/src/CxImage/ximainfo.cpp.o
CXX utils/TkCximage/src/CxImage/ximajpg.cpp.o
CXX utils/TkCximage/src/CxImage/ximalyr.cpp.o
CXX utils/TkCximage/src/CxImage/ximapng.cpp.o
CXX utils/TkCximage/src/CxImage/ximatga.cpp.o
CXX utils/TkCximage/src/CxImage/ximatran.cpp.o
CXX utils/TkCximage/src/CxImage/ximabmp.cpp.o
CXX utils/TkCximage/src/CxImage/ximaenc.cpp.o
CXX utils/TkCximage/src/CxImage/ximage.cpp.o
CXX utils/TkCximage/src/CxImage/ximahist.cpp.o
CXX utils/TkCximage/src/CxImage/ximaint.cpp.o
CXX utils/TkCximage/src/CxImage/ximalpha.cpp.o
CXX utils/TkCximage/src/CxImage/ximapal.cpp.o
CXX utils/TkCximage/src/CxImage/ximasel.cpp.o
CXX utils/TkCximage/src/CxImage/ximath.cpp.o
CXX utils/TkCximage/src/CxImage/xmemfile.cpp.o
AR utils/TkCximage/src/CxImage/libCxImage.a
ar: creando utils/TkCximage/src/CxImage/libCxImage.a
LDX utils/TkCximage/src/TkCximage.cpp.so
LDX utils/TkCximage/src/TkCximage.cpp.so
cp utils/TkCximage/src/TkCximage.cpp.so utils/TkCximage/TkCximage.so
CC utils/webcamsn/src/webcamsn.o
CC utils/webcamsn/src/kidhash.o
CC utils/webcamsn/src/bitstring.o
CC utils/webcamsn/src/deblock.o
CC utils/webcamsn/src/encode.o
CC utils/webcamsn/src/idct_dequant.o
CC utils/webcamsn/src/mimic.o
CC utils/webcamsn/src/vlc_decode.o
CC utils/webcamsn/src/colorspace.o
CC utils/webcamsn/src/decode.o
CC utils/webcamsn/src/fdct_quant.o
CC utils/webcamsn/src/vlc_common.o
CC utils/webcamsn/src/vlc_encode.o
AR utils/webcamsn/src/libmimic.a
ar: creando utils/webcamsn/src/libmimic.a
LD utils/webcamsn/src/webcamsn.so
cp utils/webcamsn/src/webcamsn.so utils/webcamsn/webcamsn.so
CC utils/tcl_siren/src/tcl_siren.o
CC utils/tcl_siren/src/common.o
CC utils/tcl_siren/src/dct4.o
CC utils/tcl_siren/src/encoder.o
CC utils/tcl_siren/src/decoder.o
CC utils/tcl_siren/src/huffman.o
CC utils/tcl_siren/src/rmlt.o
AR utils/tcl_siren/src/libsiren.a
ar: creando utils/tcl_siren/src/libsiren.a
LD utils/tcl_siren/src/tcl_siren.so
cp utils/tcl_siren/src/tcl_siren.so utils/tcl_siren/tcl_siren.so
CC utils/linux/capture/capture.o
CC utils/linux/capture/libng/grab-ng.o
CC utils/linux/capture/libng/devices.o
CC utils/linux/capture/libng/writefile.o
CC utils/linux/capture/libng/parse-mpeg.o
CC utils/linux/capture/libng/parse-dvb.o
CC utils/linux/capture/libng/color_common.o
CC utils/linux/capture/libng/color_packed.o
CC utils/linux/capture/libng/color_lut.o
CC utils/linux/capture/libng/color_yuv2rgb.o
CC utils/linux/capture/libng/convert.o
CC utils/linux/capture/libng/misc.o
AR utils/linux/capture/libng/libng.a
ar: creando utils/linux/capture/libng/libng.a
LD utils/linux/capture/capture.so
CC utils/linux/capture/libng/plugins/conv-mjpeg.o
LD utils/linux/capture/libng/plugins/conv-mjpeg.so
CC utils/linux/capture/libng/plugins/drv0-v4l2.o
CC utils/linux/capture/libng/plugins/struct-v4l2.o
CC utils/linux/capture/libng/plugins/struct-dump.o
LD utils/linux/capture/libng/plugins/drv0-v4l2.so
CC utils/linux/capture/libng/plugins/drv1-v4l.o
CC utils/linux/capture/libng/plugins/struct-v4l.o
LD utils/linux/capture/libng/plugins/drv1-v4l.so
CC utils/linux/capture/libng/plugins/sn9c10x.o
LD utils/linux/capture/libng/plugins/sn9c10x.so
CC utils/linux/traydock/libtray.o
LD utils/linux/traydock/libtray.so
CC utils/linux/linflash/flash.o
LD utils/linux/linflash/flash.so
make[2]: se sale del directorio `/home/domi/amsn-0.97'
#docbook-to-man debian/amsn.sgml > amsn.1
touch build-stamp
dh_testdir
dh_testroot
dh_clean
dh_installdirs
# Add here commands to install the package into debian/amsn.
/usr/bin/make install DESTDIR=/home/domi/amsn-0.97/debian/amsn
make[2]: se ingresa al directorio `/home/domi/amsn-0.97'
rm -Rf /home/domi/amsn-0.97/debian/amsn/usr/share/amsn
mkdir -p /home/domi/amsn-0.97/debian/amsn/usr/share/amsn
mkdir -p /home/domi/amsn-0.97/debian/amsn/usr/bin
mkdir -p /home/domi/amsn-0.97/debian/amsn/usr/share/applications/
mkdir -p /home/domi/amsn-0.97/debian/amsn/usr/share/pixmaps/
find /home/domi/amsn-0.97/debian/amsn/usr/share/amsn -name '.svn' -print | xargs rm -Rf
ln -sf /usr/share/amsn/amsn /home/domi/amsn-0.97/debian/amsn/usr/bin/amsn
ln -sf /usr/share/amsn/amsn-remote /home/domi/amsn-0.97/debian/amsn/usr/bin/amsn-remote
ln -sf /usr/share/amsn/amsn-remote-CLI /home/domi/amsn-0.97/debian/amsn/usr/bin/amsn-remote-CLI
cp ./amsn.desktop /home/domi/amsn-0.97/debian/amsn/usr/share/applications/
ln -sf /usr/share/amsn/desktop-icons/48x48/apps/amsn.png /home/domi/amsn-0.97/debian/amsn/usr/share/pixmaps/
make[2]: se sale del directorio `/home/domi/amsn-0.97'
dh_testdir
dh_testroot
dh_installdocs
dh_installexamples
dh_installman
dh_link
dh_strip
dh_compress
dh_fixperms
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb --destdir="./distrib/DEB" --filename="amsn_0.97-1.deb"
dpkg-deb: construyendo el paquete `amsn' en `./distrib/DEB/amsn_0.97-1.deb'.
make[1]: se sale del directorio `/home/domi/amsn-0.97'
rm -f debian/changelog
rm -rf debian/amsn


4. Eliminamos la versión anterior (En éste paso doy por sentado que has instalado la versión anterior según la guía que pubiqué en julio o que nunca lo has instalado, nisiquiera desde los repositorios oficiales de Debian, ya que te puede dar algun problemilla. Ver apartado 1 de la guía anterior):

# dpkg -r amsn
(Leyendo la base de datos ...
121098 ficheros y directorios instalados actualmente.)
Desinstalando amsn ...


5. Instalamos la nueva versión:

# dpkg -i distrib/DEB/amsn_0.97.2-1.deb
Seleccionando el paquete amsn previamente no seleccionado.
(Leyendo la base de datos ...
120209 ficheros y directorios instalados actualmente.)
Desempaquetando amsn (de distrib/DEB/amsn_0.97.2-1.deb) ...
Configurando amsn (0.97.2-1) ...

Simplemente abre el programa desde el MENÚ KDE / INTERNET y a disfratarlo.


Saludos y suerte.
Domi - Gran Canaria (Islas Canarias)

2 comentarios:

Anónimo dijo...

Oye buenisimo el blog y todo eso pero... cuando pongo lo de :

wget http://garr.dl.sourceforge.net/sourceforge/amsn/amsn-0.97.tar.bz2

Se pone :

--21:51:55-- http://garr.dl.sourceforge.net/sourceforge/amsn/amsn-0.97.tar.bz2 => `amsn-0.97.tar.bz2'
Resolviendo garr.dl.sourceforge.net... 193.206.140.34
Connecting to garr.dl.sourceforge.net|193.206.140.34|:80... falló: Expiró el tiempo de conexión.
Reintentando.

--21:55:05-- http://garr.dl.sourceforge.net/sourceforge/amsn/amsn-0.97.tar.bz2 (intento: 2) => `amsn-0.97.tar.bz2'
Connecting to garr.dl.sourceforge.net|193.206.140.34|:80... falló: Expiró el tiempo de conexión.
Reintentando.

y asi todo el tiempo ¿Me puedes ayudar esque no se lo que pasa estara el link mal o algo?

Romario dijo...

Hola. Gracias por el aviso. He corregido el link.

Saludos y suerte.
Domi