Lo prometido es deuda dirían, así que aquí está.
Primero que nada necesitamos descargar los archivos para compilar (ademas en slackware deberas tener los paquetes de compilación mínimos necesarios, glib, libc, gcc y el resto (creo que haré otro post referente a lo mínimo necesario para compilar paquetes)).
http://slackbuilds.org/repository/14.0/system/virtualbox/
Hay varias informaciones en la página, pero entre otras abajo podemos notar que nos pide que antes tengamos instalados acpia y virtualbox-kernel.
Por lo que vamos a descargar primero acpica y luego por virtualbox-kernel.
Descargamos el source comprimido y el paquete de slackbuilds.org para acpica.
y vamos a la consola
accedemos a donde descargamos los archivos:
bash-4.2$tar -xzpf acpica.tar.gz bash-4.2$mv acpica-unix2-20130214.tar.gz acpica bash-4.2$cd acpica
pasamos a modo superusuario
bash-4.2$su Password:
Opcionalmente yo ultimamente ejecuto el comando
export MAKEFLAGS="j5"
donde el 5 indica el número de hilos que deseo tener corriendo durante la compilación.
Para ejecutar el comando de compilación ejecutamos como super usuario:
bash-4.2# ./acpica.Slackbuild
cuando haya terminado la compilación mostrará algo como esto:
el archivo instalador por lo general siempre se genera y queda en /tmp
Entonces lo movemos a la carpeta actual:
bash-4.2#mv /tmp/acpica-20130214-i486-1_SBo.tgz ./
Luego ejecutamos el comando que instala el paquete en el sistema, el instalador es installkpkg:
bash-4.2#installpkg acpica-20130214-i486-1_SBo.tgz
Nos mostrará un texto descriptivo del paquete mientras lo instala.
Luego finalmente nos dice que ha instalado el paquete.
Esto es el proceso normal durante la instalación de un slackbuild.
Ahora procederemos a instalar el paquete virtualbox-kernel
Primero descargar el paquete
Realizamos los mismos pasos:
– Vamos con la consola a donde descargamos los paquetes y ejecutamos el comando de descompresion al archivo slackbuild:
bash-4.2$tar -xzpf virtualbox-kernel.tar.gz
movemos el source comprimido a la carpeta que acabamos de descomprimir
bash-4.2$mv virtualbox-kernel-4.2.10.tar.xz virtualbox-kernel bash-4.2$cd virtualbox-kernel
Cambiamos a modo de superusuario
bash-4.2$su Password: bash-4.2#
y ahora ejecutamos el comando para compilar:
bash-4.2#./virtualbox-kernel.Slackbuild
Una vez que se ha creado el paquete lo movemos de la carpeta tmp a la carpeta actual:
bash-4.2#mv /tmp/virtualbox-kernel-4.2.10_3.2.23_smp-i486-1_SBo.tgz ./
Observación: tener en cuenta que 3.2.23_smp es la versión de mi kernel, uds van a ver algo similar si tienen el mismo kernel u otra versión.
Luego finalmente se procede a la instalacion con installpkg
bash-4.2# installpkg virtualbox-kernel-4.2.10_3.2.23_smp-i486-1_SBo.tgz
Listo ya tenemos dos de los requerimientos
Ahora ya podemos compilar e instalar virtualbox.
Descomprimos el paquete de slackbuilds.org
bash-4.2$tar -xzpf virtualbox.tar.gz
movemos el source comprimido a la carpeta virtualbox que acabamos de descomprimir
bash-4.2$mv VirtualBox-4.2.10.tar.bz2 virtualbox bash-4.2$cd virtualbox
Pasamos a modo superusuario:
bash-4.2$su Password:
y antes de correr el comando de compilacion del slackbuild, agregamos el grupo virtualbox al sistema
sino tendriamos un mensaje como este:
asi que agregamos con el comando que allí mismo sugiere:
bash-4.2#groupadd -g 215 vboxusers
Luego antes de continuar, hay algo más. Se pueden pasar algunos parámetros al slackbuild a la hora de compilar. Uno de ellos es el Hardening (realmente no estaba muy seguro de que erá, así que hice una búsqueda y me encontré con esta respuesta en este foro: https://forums.virtualbox.org/viewtopic.php?f=7&t=53293
Donde cito lo que dice el usuario noteirak
Typically, hardening means that a bunch of security checks will occur, and a very strict set of rules will apply for files location, security permissions, etc. Simply so the application doesn’t break, and also to make sure no tempering is attempted.
If you are a USER, keep hardening enabled.If you are a DEVELOPPER, you can turn off hardening to make your life much easier while coding.
De lo que extraigo:
si eres un usuario manten activado el hardening, sino (si eres desarrollador) mantenlo desactivado para hacer tu vida mucho más sencilla.
Como yo soy desarrollador (lo que no significa que vaya a desarrollar con virtualbox) lo mantengo desactivado.
Además en un comienzo pensé en tener activado los enlaces con java, pero me salió un error, así que decidí dejarlo a un lado, pero si decides hacerlo basta con poner «JAVA=yes» antes de la llamada al script slackbuild.
Finalmente la llamada al script quedaría algo así
bash-4.2#HARDENING=no ./virtualbox.Slackbuild
luego de terminar muestra que el paquete se ha creado:
movemos el paquete creado a la carpeta actual e instalamos con installpkg
bash-4.2#mv /tmp/virtualbox-4.2.10-i486-1_SBo.tgz ./ bash-4.2#installpkg virtualbox-4.2.10-i486-1_SBo.tgz
Y listo
luego deberiamos de poder entrar en nuestro sistema y buscar virtualbox
Como nota final, quiero mencionar que el compilar los paquetes lleva cierto tiempo, usar el MAKEFLAGS=»j5″ (donde 5 es el numero de threads que puede soportar el procesador +1) ayuda a reducir el tiempo (gracias a la compilación en paralelo) pero no siempre funciona como se espera y puede producir algunos errores en la compilación según lo que he leído en la red, pero este no fue el caso, mi netbook con procesador atom de 1.6GHz que tiene 2 núcleos pero soporta hiperthreading se portó y aquí una muestra del gráfico del htop:
Llevo su tiempo hacer el post, espero pueda servirles de guía, recordar que puede variar en su instalación según las librerías que tengan, la versión del kernel y otros factores.
los datos del uname -a de mi máquina:
bash-4.2# uname -a
Linux netbook 3.2.23-smp #2 SMP Thu Jul 12 21:12:14 CDT 2012 i686 Intel(R) Atom(TM) CPU N570 @ 1.66GHz GenuineIntel GNU/Linux