Me encontré con este problema cuando intentaba compilar un programa en Zig
Mi problema comenzó aquí:
- $ zig build-exe mi-programa.zig
- zig: error while loading shared libraries: libclang-cpp.so
El problema es que los paquetes clang
y llvm-libs
actualmente instalados están desactualizados, también puede que tengas otros programas que dependen de estas versiones más viejas de esos paquetes, y es allí donde el problema comienza. Esto quiere decir que no se puede hacer un update como siempre, necesitamos desinstalar paquetes de manera forzada.
Manos a la obra!
En este punto tengo clang
v14 y llvm-libs14
instalados, quizá tengas otras versiones como la 13, normalmente tienen un sufijo que termina con el número de la versión, por ejemplo: clang14
clang13
etc.
Para desinstalar clang y llvm-libs usé el siguiente comando:
sudo pacman -Rdd clang llvm-libs14
No es por equivocación que puse clang
en vez de clang14
, esto se debe a que cuando instalé este paquete en ese momento era la última versión, y cuando es la última versión no tiene sufijo de versión.
Luego agrego la versión vieja de clang, en mi caso necesito clang14
para otras dependencias, y la versión actual clang
v15 para Zig.
sudo pacman -Sy clang14 clang
Si no estás seguro que versión es necesaria para otros paquetes, simplemente agrega versiones anteriores, al momento de escribir está disponible clang13
.
Now update llvm libs:
sudo pacman -Sy lib32-llvm-libs llvm-libs llvm14-libs
Ahora podes probar nuevamente compilar tu programa en Zig.
Gracias por leer!
Namaste.