Связывание зависимостей разделяемой библиотеки

Я работал с SFML, я скомпилировал небольшую тестовую программу и добавил опцию связывания-lsfml-audio, Затем я использовалldd ./program чтобы увидеть динамические библиотеки, на которые он ссылался. Удивительно, но их было много, ни один из них я не выбрал вручную в своем make-файле и не использовалpkg-config --libs.

Я начал читать об общих библиотеках и сделал небольшой пример, чтобы решить мои сомнения. Однако у меня есть этот вопрос:

почему некоторые библиотеки нуждаются в добавлении зависимостей в ваш make-файл (вручную или с помощью скрипта, подобногоpkg-config) а другие библиотеки автоматически связывают свои зависимости?

Когда вы создаете свою динамическую библиотеку, это так же просто, как добавить-ldependency варианты вg++ -shared ... Команда, чтобы избежать хлопот пользователя вручную добавлять зависимости позже. Почему многие из доступных библиотек этого не делают?

Я предполагаю, что это должно быть связано со способностью тонкой настройки, какие библиотеки связаны и тому подобное.

Ответы на вопрос(1)

Ваш ответ на вопрос