У меня есть небольшой фрагмент кода, который зависит от многих статических библиотек (a_1-a_n). Я хотел бы упаковать этот код в статическую библиотеку и сделать его доступным другим людям.
Моя статическая библиотека, назовем ее X, компилируется нормально.
Я создал простую программу-пример, в которой используется функция из X, но когда я пытаюсь связать ее с X, я получаю много ошибок, связанных с отсутствием символов из библиотек a_1 - a_n.
Есть ли способ, которым я могу создать новую статическую библиотеку Y, которая содержит X и все функции, необходимые для X (выбранные биты из a_1 - a_n), чтобы я мог распространять только Y, чтобы люди могли связывать свои программы?
ОБНОВИТЬ:
Я смотрел, как просто сбрасывать все с помощью ar и создавать одну мегабиблиотеку, однако в итоге получается много ненужных символов (все файлы .o имеют размер около 700 МБ, однако размер статически связанного исполняемого файла составляет 7 МБ). Есть ли хороший способ включить только то, что действительно необходимо?
Это похоже на Как объединить несколько библиотек C / C ++ в одну?.