es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo solucionar el error “error: nombre de objeto entra en conflicto en el archivo” al intentar instalar una versión más reciente de librsvg en aarch64.

Actualmente estoy ejecutando Ubuntu Server 20.04.3 con GUI instalado, en una máquina virtual que se ejecuta en un Mac con el último chip M1 Pro.

Me gustaría instalar el paquete ‘librsvg’ con la versión 2.52.5, y la versión actual de librsvg se muestra a continuación:

$ apt show librsvg2-dev
Package: librsvg2-dev
Version: 2.48.9-1ubuntu0.20.04.1
Priority: optional
Section: libdevel
Source: librsvg
Origin: Ubuntu

Descargué la fuente de la última versión desde este enlace link y hice lo siguiente:

$ ./configure
$ sudo make install

Sin embargo, hubo un error que indicaba conflictos de nombres de objeto:

make  install-recursive
make[1]: Entrando en el directorio '/home/root/packages/librsvg-2.52.5'
Instalando en .
make[2]: Entrando en el directorio '/home/root/packages/librsvg-2.52.5'
  CCLD     librsvg-2.la
libtool:   error: object name conflicts in archive: .libs/librsvg-2.lax/librsvg_c_api.a//home/root/packages/librsvg-2.52.5/./.libs/librsvg_c_api.a
make[2]: *** [Makefile:818: librsvg-2.la] Error 1
make[2]: Saliendo del directorio '/home/root/packages/librsvg-2.52.5'
make[1]: *** [Makefile:1078: install-recursive] Error 1
make[1]: Saliendo del directorio '/home/root/packages/librsvg-2.52.5'
make: *** [Makefile:1383: install] Error 2

Pensé que esto podría deberse al paquete librsvg previamente instalado, por lo que eliminé dicho paquete y perdí la GUI. Intenté ejecutar los comandos de dos líneas anteriores una vez más, pero ocurrió el mismo error.

A continuación, tengo algunas preguntas:

  1. ¿Me podrían decir cuál es la manera intuitiva de resolver un problema como este?
  2. ¿Qué es lo que causó este conflicto?
  3. ¿Cómo se puede resolver este problema de conflicto?

¡Gracias de antemano!

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Solución al error de instalación del paquete librsvg

    Forma intuitiva de solucionar el problema

    La forma intuitiva de resolver el error de conflicto al instalar el paquete librsvg es investigar la causa del problema y encontrar una solución adecuada. En este caso, el error de conflicto indica un conflicto de nombres de objetos en el archivo, pero el mensaje de error no proporciona más detalles sobre la fuente específica del conflicto. Por lo tanto, se requiere una investigación cuidadosa sobre la naturaleza del conflicto para encontrar una solución apropiada.

    Causa del conflicto

    El error de conflicto ocurrió durante la instalación del paquete librsvg debido a que el paquete librsvg previamente instalado en Ubuntu Server 20.04.3 con GUI instalado creó un conflicto de nombres de objetos durante la instalación de la última versión (v2.52.5) desde la fuente. El conflicto ocurrió debido a la diferencia en la versión del paquete librsvg, lo que puede haber resultado en un choque entre los nombres de objetos de los paquetes.

    Solución al problema de conflicto

    Para resolver el problema de conflicto, se recomienda seguir estos pasos:

    1. Verificar si los paquetes librsvg previamente instalados se han eliminado por completo del sistema, incluidas las dependencias asociadas.

    sudo apt-get remove --auto-remove librsvg2-dev

    1. Descargar las dependencias y bibliotecas necesarias para la instalación del paquete librsvg mediante el siguiente comando.

    sudo apt install build-essential

    1. Descargar el paquete fuente de librsvg desde el sitio web oficial según se indica en la pregunta y extraer los archivos.

    tar zxvf librsvg-2.52.5.tar.gz

    1. Navegar hasta el directorio extraído y ejecutar los siguientes comandos.
    ./configure
    make
    sudo make install
    
    1. Verificar si la instalación se realizó con éxito revisando la versión del paquete librsvg instalado mediante el siguiente comando.

    pkg-config --modversion librsvg-2.0

    Si la instalación se realizó correctamente, el sistema debería mostrar el número de versión instalada (2.52.5) del paquete librsvg.

    Esta solución debería resolver el problema de conflicto y permitir la instalación de la última versión del paquete librsvg en Ubuntu Server 20.04.3 con GUI instalado, ejecutándose en una máquina virtual con el último chip M1 Pro.

Comments are closed.