¿Cómo especificar la versión de la biblioteca para usar en el momento del enlace?
Siguiente pregunta¿Cómo se resuelven las aplicaciones a diferentes versiones de bibliotecas compartidas en tiempo de ejecución?, Me preguntaba cómo especificar en la línea de comando de enlace qué versión de la biblioteca usar.
Digamos que tengo
libmy.so.1.0
libmy.so.1 -> libmy.so.1.0
libmy.so.2.0
libmy.so.2 -> libmy.so.2.0
libmy.so -> libmy.so.2
La forma habitual de especificar la biblioteca para vincular con el ejecutable no muestra la versión a utilizar. Además, es muy probable que se quiera vincular con la versión más reciente. Por lo tanto, la línea habitual funciona bien en la mayoría de los casos.
gcc app.o -lmy -o app
¿Cuál es la línea de comando para vincular?app
que debería usar la versión 1 de la biblioteca?