Я использую gcc для компиляции программы, которую мне нужно связать с библиотекой C с нестандартным именем; он называется stuff.a
вместо libstuff.a
.
Я не могу изменить имя файла (проблемы с разрешениями).
Я не хочу включать полную библиотеку (то есть используя gcc program.c stuff.a -oprogram
)
Я хочу скомпилировать как gcc program.c -L/path/to/library/ -lstuff -oprogram
, но gcc не найдет библиотеку (поскольку она не называется libstuff.a
).
Я работаю над коробкой Linux.
Как я могу получить (динамическое) связывание?
EDIT:
Спасибо всем, и мои извинения за плохо сформулированный вопрос.
У меня даже не было общего объекта (я думал, что могу динамически связываться с * .a файлом), поэтому многих из вас это смутило. Опять извинения за мое невежество.
Я закончил тем, что создал общий объект в локальном каталоге, добавил местоположение в переменную среды LD_LIBRARY_PATH и снова установил связь.
Работает как брелок (от 1,3 М до 5,8 КБ).
Еще раз спасибо.