Buscar

4.3. Creación de bibliotecas dinámicas con GCC

download PDF

Las bibliotecas enlazadas dinámicamente (objetos compartidos) permiten:

  • conservación de recursos mediante la reutilización de códigos
  • mayor seguridad al facilitar la actualización del código de la biblioteca

Siga estos pasos para construir e instalar una biblioteca dinámica desde el código fuente.

Requisitos previos

Procedimiento

  1. Cambie al directorio con las fuentes de la biblioteca.
  2. Compile cada archivo fuente en un archivo objeto con la opción de código independiente de la posición -fPIC:

    $ gcc ... -c -fPIC some_file.c...

    Los archivos objeto tienen los mismos nombres de archivo que los del código fuente original, pero su extensión es .o.

  3. Enlaza la biblioteca compartida desde los archivos de objetos:

    $ gcc -shared -o libfoo.so.x.y -Wl,-soname,libfoo.so.x some_file.o ...

    El número de versión mayor utilizado es X y el número de versión menor Y.

  4. Copie el archivo libfoo.so.x.y en una ubicación apropiada, donde el enlazador dinámico del sistema pueda encontrarlo. En Red Hat Enterprise Linux, el directorio para las bibliotecas es /usr/lib64:

    # cp libfoo.so.x.y /usr/lib64

    Tenga en cuenta que necesita permisos de root para manipular los archivos de este directorio.

  5. Crear la estructura de enlaces simbólicos para el mecanismo de soname:

    # ln -s libfoo.so.x.y libfoo.so.x
    # ln -s libfoo.so.x libfoo.so

Recursos adicionales

  • El proyecto de documentación de Linux
Red Hat logoGithubRedditYoutubeTwitter

Aprender

Pruebe, compre y venda

Comunidades

Acerca de la documentación de Red Hat

Ayudamos a los usuarios de Red Hat a innovar y alcanzar sus objetivos con nuestros productos y servicios con contenido en el que pueden confiar.

Hacer que el código abierto sea más inclusivo

Red Hat se compromete a reemplazar el lenguaje problemático en nuestro código, documentación y propiedades web. Para más detalles, consulte el Blog de Red Hat.

Acerca de Red Hat

Ofrecemos soluciones reforzadas que facilitan a las empresas trabajar en plataformas y entornos, desde el centro de datos central hasta el perímetro de la red.

© 2024 Red Hat, Inc.