Después de actualizar mi caja de Arch Linux, VirtualBox no se abre. Intenté abrirlo desde la Terminal ejecutando el comando "virtualbox". Pero VirtualBox se negó a abrir y seguía mostrando el siguiente mensaje:
VirtualBox: supR3HardenedMainGetTrustedMain: dlopen("/usr/lib/virtualbox/VirtualBox.so",) failed: /usr/lib/libharfbuzz.so.0: undefined symbol: FT_Get_Var_Blend_Coordinates
Después de examinar detenidamente el error anterior, llegué a la conclusión de que VirtualBox no funciona después de la actualización de harfbuzz de la versión 1.3.4-1 a la 1.4.1-1. Por lo tanto, pensé que degradar harfbuzz a la versión anterior podría solucionar este problema. He buscado en mi caché local para ver si hay alguna versión anterior de harfbuzz.
$ ls /var/cache/pacman/pkg/
Salida de muestra:
harfbuzz-1.4.1-1-x86_64.pkg.tar.xz virtualbox-5.1.12-1-x86_64.pkg.tar.xz harfbuzz-icu-1.4.1-1-x86_64.pkg.tar.xz
Desafortunadamente, no tengo ninguna versión anterior de harfbuzz en mi carpeta de caché local para revertir.
Descargar - Libro electrónico gratuito:"Libro de recetas de contenedorización de Docker"Sin embargo, conozco otra solución para solucionar este problema. En Arch Linux y sus derivados, podemos degradar fácilmente un paquete a sus versiones anteriores usando "downgrade" utilidad. Simplemente instale la utilidad de degradación como se describe en el siguiente enlace.
- Cómo degradar un paquete en Arch Linux
Una vez instalada la utilidad de degradación, podemos degradar fácilmente el paquete harfbuzz como se muestra a continuación.
$ sudo downgrade harfbuzz
Debería ver la lista de paquetes más antiguos disponibles tanto en el caché local como en los repositorios de Arch Linux. Simplemente seleccione la versión anterior y presione ENTER. En mi caso, seleccioné la tercera opción que muestra la versión harfbuzz-1.3.4-1.
Available packages: 1) harfbuzz-1.4.1-1-x86_64.pkg.tar.xz (remote) 2) harfbuzz-1.4.1-1-x86_64.pkg.tar.xz (local) 3) harfbuzz-1.3.4-1-x86_64.pkg.tar.xz (remote) 4) harfbuzz-1.3.3-2-x86_64.pkg.tar.xz (remote) 5) harfbuzz-1.3.3-1-x86_64.pkg.tar.xz (remote) 6) harfbuzz-1.3.2-1-x86_64.pkg.tar.xz (remote) 7) harfbuzz-1.3.1-1-x86_64.pkg.tar.xz (remote) 8) harfbuzz-1.3.0-1-x86_64.pkg.tar.xz (remote) 9) harfbuzz-1.2.7-1-x86_64.pkg.tar.xz (remote) 10) harfbuzz-1.2.6-1-x86_64.pkg.tar.xz (remote) 11) harfbuzz-1.2.4-3-x86_64.pkg.tar.xz (remote) 12) harfbuzz-1.2.4-1-x86_64.pkg.tar.xz (remote) 13) harfbuzz-1.2.3-1-x86_64.pkg.tar.xz (remote) 14) harfbuzz-1.2.1-1-x86_64.pkg.tar.xz (remote) 15) harfbuzz-1.2.0-1-x86_64.pkg.tar.xz (remote) 16) harfbuzz-1.1.3-1-x86_64.pkg.tar.xz (remote) 17) harfbuzz-1.1.2-3-x86_64.pkg.tar.xz (remote) 18) harfbuzz-1.1.2-2-x86_64.pkg.tar.xz (remote) 19) harfbuzz-1.1.2-1-x86_64.pkg.tar.xz (remote) 20) harfbuzz-1.1.1-1-x86_64.pkg.tar.xz (remote) 21) harfbuzz-1.1.0-1-x86_64.pkg.tar.xz (remote) 22) harfbuzz-1.0.6-2-x86_64.pkg.tar.xz (remote) 23) harfbuzz-1.0.6-1-x86_64.pkg.tar.xz (remote) 24) harfbuzz-1.0.5-1-x86_64.pkg.tar.xz (remote) 25) harfbuzz-1.0.4-1-x86_64.pkg.tar.xz (remote) 26) harfbuzz-1.0.3-1-x86_64.pkg.tar.xz (remote) 27) harfbuzz-1.0.1-1-x86_64.pkg.tar.xz (remote) 28) harfbuzz-0.9.41-1-x86_64.pkg.tar.xz (remote) 29) harfbuzz-0.9.40-2-x86_64.pkg.tar.xz (remote) 30) harfbuzz-0.9.40-1-x86_64.pkg.tar.xz (remote) 31) harfbuzz-0.9.38-1-x86_64.pkg.tar.xz (remote) 32) harfbuzz-0.9.37-1-x86_64.pkg.tar.xz (remote) 33) harfbuzz-0.9.36-1-x86_64.pkg.tar.xz (remote) 34) harfbuzz-0.9.35-2-x86_64.pkg.tar.xz (remote) 35) harfbuzz-0.9.35-1-x86_64.pkg.tar.xz (remote) 36) harfbuzz-0.9.32-1-x86_64.pkg.tar.xz (remote) 37) harfbuzz-0.9.30-1-x86_64.pkg.tar.xz (remote) 38) harfbuzz-0.9.29-1-x86_64.pkg.tar.xz (remote) 39) harfbuzz-0.9.28-1-x86_64.pkg.tar.xz (remote) 40) harfbuzz-0.9.26-2-x86_64.pkg.tar.xz (remote) 41) harfbuzz-0.9.26-1-x86_64.pkg.tar.xz (remote) 42) harfbuzz-0.9.24-1-x86_64.pkg.tar.xz (remote) 43) harfbuzz-0.9.23-1-x86_64.pkg.tar.xz (remote) 44) harfbuzz-0.9.22-1-x86_64.pkg.tar.xz (remote) 45) harfbuzz-0.9.19-1-x86_64.pkg.tar.xz (remote) select a package by number: 3 [1/2]: https://archive.archlinux.org/packages/h/harfbuzz/harfbuzz-1.3.4-1-x86_64.pkg.tar.xz --> harfbuzz-1.3.4-1-x86_64.pkg.tar.xz --_curl_--https://archive.archlinux.org/packages/h/harfbuzz/harfbuzz-1.3.4-1-x86_64.pkg.tar.xz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 298k 100 298k 0 0 120k 0 0:00:02 0:00:02 --:--:-- 120k [2/2]: https://archive.archlinux.org/packages/h/harfbuzz/harfbuzz-1.3.4-1-x86_64.pkg.tar.xz.sig --> harfbuzz-1.3.4-1-x86_64.pkg.tar.xz.sig --_curl_--https://archive.archlinux.org/packages/h/harfbuzz/harfbuzz-1.3.4-1-x86_64.pkg.tar.xz.sig 100 310 100 310 0 0 1562 0 --:--:-- --:--:-- --:--:-- 1562 loading packages... warning: downgrading package harfbuzz (1.4.1-1 => 1.3.4-1) resolving dependencies... looking for conflicting packages... Packages (1) harfbuzz-1.3.4-1 Total Installed Size: 2.25 MiB Net Upgrade Size: -0.15 MiB :: Proceed with installation? [Y/n] y (1/1) checking keys in keyring [##############################################] 100% (1/1) checking package integrity [##############################################] 100% (1/1) loading package files [##############################################] 100% (1/1) checking for file conflicts [##############################################] 100% (1/1) checking available disk space [##############################################] 100% :: Processing package changes... (1/1) downgrading harfbuzz [##############################################] 100% add harfbuzz to IgnorePkg? [y/n] y
¡Viva! Yo tenía razón. Hurfbuzz es el culpable. Después de degradar el paquete harfbuzz a su versión anterior, VirtualBox funciona como de costumbre sin ningún problema. Espero que los desarrolladores de Arch o cualquier miembro de la comunidad solucionen este problema.
Nota importante: Si desea utilizar la última versión de harfbuzz, al mismo tiempo con una buena reproducción de fuentes, pruebe la siguiente guía.
- Cómo solucionar el problema de Harfbuzz e Infinality en Arch Linux