Это цитата из книги программирования Linux:
% gcc -o app app.o -L. –ltest
Предположим, что доступны как libtest.a, так и libtest.so. Тогда компоновщик должен
выберите одну из библиотек, а не другую. Линкеров ищет каждый каталог (сначала
те, которые указаны с параметрами -L, а затем те, что указаны в стандартных каталогах).
компоновщик находит каталог, содержащий либо libtest.a, либо libtest.so, компоновщик останавливается
поисковые каталоги. Если в каталоге присутствует только один из двух вариантов, компоновщик
выбирает этот вариант. В противном случае компоновщик выбирает версию разделяемой библиотеки, если только
вы явно укажете его иначе. Вы можете использовать опцию -static для запроса статического
архивы. Например, следующая строка будет использовать архив libtest.a, даже если
Доступна также общая библиотека libtest.so:
% gcc -static -o app app.o -L. –ltest
Так как, если компоновщик встречается с каталогом, который содержит libtest.a, он останавливает поиск и использует эту статическую библиотеку, как заставить компоновщик искать только для общей библиотеки, а не для статического?
% gcc -o app app.o -L. libtest.so?