На странице документации библиотеки Boost есть две категории: " Библиотеки только для заголовков " и " Автоматическое связывание ".
Я предполагаю, что "Библиотеки только для заголовков" означают, что вам не нужно связываться с библиотеками Boost, чтобы использовать их, а "Автоматическое связывание" означает, что вы должны ссылаться.
Но когда я использую Boost.Timer
, мне нужно связать статическую или динамическую библиотеку с именем timer
(libboost_timer.a
и libboost_timer.so.1.48.0
и различные программные ссылки на них в пути к библиотеке Linux), которая, по-видимому, является точным файлом библиотеки. Boost.Timer
. Мне даже нужно соединиться с Boost.System
и Boost.Chrono
, хотя понятно, что сама библиотека использует некоторые другие библиотеки, которые необходимо связать.
С другой стороны, Boost четко заявил, что Boost.Asio
принадлежит "Автоматическому связыванию", но нет никаких библиотечных файлов с именем, подобным asio
.
Так что же на самом деле означает " библиотека только для заголовков " или " автоматическое связывание "? Или это чисто ошибка?