когда вы создаете разделяемую библиотеку C ++, вам нужно прикреплять только заголовки, от которых зависит ваша библиотека? - PullRequest
0 голосов
/ 26 марта 2011

Итак, я создаю библиотеку.Я хочу использовать общие библиотеки ffmpeg.На Mac OS с Xcode.Я создаю файл проекта с premake4.Должен ли я подключить общие библиотеки к своему проекту или я должен подключить только включает в себя?

1 Ответ

3 голосов
/ 26 марта 2011

Если я правильно понимаю ваш вопрос, вы спрашиваете, нужны ли вам как общие библиотеки, так и заголовки, или просто заголовки, чтобы ваш проект работал.

Вам нужны оба. Библиотеки, как правило, были фактическим кодом для функций и классов, объявленных в заголовках жизни. Ваш проект будет прекрасно компилироваться только с присутствующими заголовками, но если в lib или разделяемой lib нет соответствующего кода, вы можете рассчитывать на ошибки компоновщика.

Я должен сказать, что я не знаком с фактическим процессом сборки на OS X, но я считаю, что вышеизложенное присуще любому проекту C / C ++ независимо от ОС.

Кроме того, поскольку вы, вероятно, работаете со стандартной библиотекой, у вас может сложиться впечатление, что все, что вы делаете, - это #include заголовки (iostream, stdio.h и т. Д.), Но библиотеки все еще там и были добавлены по умолчанию вашей IDE.

...