Actualización de software en Linux

Tengo un progtwig llamado zlib que necesito actualizar. Como nunca lo descargué antes, sospecho que viene con Ubuntu.

Normalmente solo lo downloadía y comstackría, pero una herramienta diferente (vcftools) lo usará, así que no puedo instalarlo localmente. Sospecho que o necesito

  1. Instale la nueva versión de zlib en alguna parte y pida al sistema que busque zlib en la carpeta que lo instalé. Si zlib es compatible con versiones anteriores, debería estar bien, espero.

  2. Actualice la versión actual (pero sudo apt-get install me dice que tengo la versión más reciente)

¿Cómo hago esto? Gracias.

Creo que estás confundiendo las cosas un poco. zlib es simplemente otro package instalado localmente en tu caja de Ubuntu. Primero vería si hay una versión más nueva de zlib en uno de los repositorys Ubuntu / Debian que contienen todo el software que puede instalar (preconstruido) para Ubuntu / Debian y otros sistemas operativos que se derivan de cualquiera de esas dos distribuciones.

 $ apt-get install zlib 

Pero antes de hacer ese command, comprobemos que el package se llame de hecho zlib :

 $ dpkg -l |grep zlib ii zlib1g:amd64 1:1.2.7.dfsg-13 amd64 compression library - runtime 

Entonces, parece que el package en realidad se llama zlib1g . Para actualizarlo:

 $ apt-get install zlib1g Reading package lists... Done Building dependency tree Reading state information... Done zlib1g is already the newest version. 0 upgraded, 0 newly installed, 0 to remove and 15 not upgraded. 

Así que estoy atrapado en esa versión en particular, o no hay una más nueva disponible.

Otro enfoque

Puede download con bastante facilidad la última versión de zlib , 1.2.8, y comstackrla, y luego establecer su LD_LIBRARY_PATH , temporalmente, para apuntar a sus versiones comstackdas de estas bibliotecas. Esto le permitiría probarlo, sin tener que instalarlo en su sistema por el momento.

Una vez que haya establecido LD_LIBRARY_PATH , puede invocar VCFtools para probarlos.

Próximos pasos

Su próxima opción sería encontrar un repository de terceros con una versión más nueva de zlib1g incluida, o download el package fuente y crear su propio file .deb utilizándolo. Existen numerosos tutoriales sobre cómo configurar su propio entorno de creación de packages y crear su primer file .deb. Suena más complicado de lo que realmente es.

Un lanzamiento dado de una distribución se envía con una versión dada de cada progtwig. De eso se trata un lanzamiento. (Hay distribuciones de "lanzamiento continuo", donde pasa todo el time actualizando a la próxima versión de cada pieza de software. Si tiene mejores cosas que hacer con su time, quédese con una distribución publicada).

La versión del package zlib1g en Ubuntu 12.04 (precisa) es 1.2.3.4, y la versión en Ubuntu 12.10 (cuantal) es 1.2.7. Puede download el package fuente (los tres files: .dsc , .diff.gz y .orig.tar.gz o .debian.tar.gz ) desde el website de Ubuntu, luego comstackr esa versión como un package.

 sudo apt-get install build-essential fakeroot sudo apt-get build-dep zlib dpkg-source zlib_1.2.7.dfsg-13.dsc cd zlib-1.2.7.dfsg dpkg-buildpackage -rfakeroot -us -uc -b -nc sudo apt-get install ../zlib1g-1.2.7.*.deb 

Tenga en count que la installation de versiones más nuevas de una biblioteca podría causar incompatibilidades. Para zlib, dudo que tengas problemas, pero esto no es algo que deberías hacer a la ligera.

Alternativamente, instale una versión más nueva de la biblioteca en algún lugar de su directory de inicio y úsela solo para el progtwig en particular que la necesite. Si comstack e instala zlib en ~/lib/zlib1.2.8/lib , aquí hay un script de contenedor adecuado:

 #!/bin/sh export LD_LIBRARY_PATH=~/lib/zlib1.2.8/lib exec vcftools "$@"