Задать вопрос
Boniface
@Boniface

Как создавать динамические библиотеки в C++ под Linux?

Всем привет!
Подскажите пожалуйста, как в Linux на C++ реализовать аналог dll библиотеки. То есть у меня есть программа, я подключаю к ней библиотеку, затем спустя какое то время изменяю логику работы функций в подключенной библиотеке и без перекомпиляции основной программы все работает с новым функционалом.

Я попробовал сделать так. Создал класс mac.cpp - это основная программа. И создал библиотеку mylib без метода main, скомпилировав ее ключом -c.

Затем собрал программу: g++ mac.cpp mylib.o . Все замечательно работает, но если пересобрать отдельно mylib.o то эти изменения не отражаются в скомпилированном приложении.
  • Вопрос задан
  • 5730 просмотров
Подписаться 3 Оценить Комментировать
Решения вопроса 1
EvgenijDv
@EvgenijDv
C/C++ programmer
gcc позволяет создавать статические и динамические библиотеки. Используйте параметр линковки -shared и на выходе получите файлик .so - что в linux и есть аналог .dll
Вот тут все параметры линковки
Ну и примерчик:
gcc *.o -shared -o file.so [-l<libraries>]
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы