Как создать статическую библиотеку в Visual Studio 2008 с inl файлами? - PullRequest
1 голос
/ 15 ноября 2011

Я собираю статическую библиотеку из проекта, который содержит файлы .h для интерфейсов и файлы .inl для реализации, а Visual Studio 2008 не создает для меня .lib, какова возможная причина, почему?

Ответы [ 2 ]

1 голос
/ 15 ноября 2011

Если ваша библиотека - библиотека только для заголовков (все включено #), то компилировать нечего.Компиляторы компилируют только исходный код (файлы .cpp, .c и т. Д.).Если весь ваш код является шаблоном, если в вашем коде нет файлов .cpp, то вы не генерируете никакого исходного кода.Пользователь просто включает несколько заголовков.

Большая часть Boost, например, только для заголовков.Вы просто включаете это;вы не ссылаетесь ни на что из этого.

Другими словами, если весь ваш код встроен, то ни один из них не является статическим .Так что никаких статических библиотек.

0 голосов
/ 15 ноября 2011

Компилятор обрабатывает файлы .inl так же, как и файлы .h - он не компилирует их отдельно. Вы должны включить их в файл .cpp для их компиляции.

...