В качестве вступления вы должны очень хорошо отличать статические библиотеки от динамических, они совершенно разные звери ... ответили на ваши вопросы:
Нет ли настроек компоновщика, потому что сборкабиблиотека это только операция компиляции?
Я полагаю, вы создаете статическую библиотеку в этом случае.Статическая библиотека - это просто коллекция в одном объектном файле всех отдельных объектных файлов (то есть файлов .o
, созданных компилятором), которые составляют ваше дерево исходников.Не больше, не меньше.
Со статической библиотекой вам не нужно указывать, какие есть зависимости, поскольку понятно, что именно при компиляции конечного исполняемого файла ваша библиотека будет связана со всеми остальными.библиотеки, от которых это зависит.Поэтому только в это время (окончательная сборка исполняемого файла) будет обнаружен любой отсутствующий символ, и все остальные библиотеки должны быть доступны.
Общая библиотека (также динамическая библиотека) - это исполняемый файл, который встраивает всестатические библиотеки, от которых это зависит.Он также может иметь внешние зависимости с другой разделяемой библиотекой, которая не будет встроена.
И вообще, возможно ли построить библиотеку поверх существующих библиотек?То есть, напишите мою библиотеку, используя функции и структуры SDL.Или я должен был бы получить исходный код и полностью перестроить его с включенным кодом?
Это вполне возможно как для статических, так и для динамических библиотек.
Кроме того, в этом случае совет относительно общего или статического?
В этом случае совет не возможен, поскольку вы не указали достаточно информации.Посмотрите на это: Когда использовать динамические и статические библиотеки и this , чтобы иметь своего рода руководство.
(Кроме того, любые советы о том, куда идтибольше узнать о компиляторах, компоновщиках и т. д. Я изучил структуры данных в школе, но не дальше)
Я думаю, что две ссылки выше дают вам много информации.Если вы хотите углубиться в детали, вы можете начать с этой статьи в Википедии и просмотреть оттуда.