Для моих целей это просто то, что создает для вас библиотеку boost, я не знал, что вы можете сделать что-нибудь еще, поэтому я не понимаю, что вы могли бы сказать, перейдя на нее. И мне очень жаль, но я не знаю, что такое обычное варенье. Поскольку никто другой не дал ответа, я просто объясню это.
Boost - это набор классов и функций для C++, которые полезны для различных задач. Классы и функции boost группируются в библиотеки. Некоторые библиотеки имеют свой код в заголовочных файлах, которые можно использовать просто с помощью инструкции препроцессора #include, в то время как другие (например, файловая система или библиотека регулярных выражений) имеют часть своей реализации в файлах .cpp.
Компиляция этих .cpp-файлов может занять много времени (это похоже на 30 минут в зависимости от того, что вы компилируете), и это было бы настоящей болью, если бы потребовалось полчаса каждый раз, когда вы хотели перекомпилировать свою программу. Так что они сделали только для тех библиотек, которые частично хранятся в .cpp-файлах, вы можете предварительно их скопировать в файл .lib, и это является целью форматирования. Это означает, что вам нужно всего лишь потратить полчаса на сбор после, и с этого момента вам больше не придется ждать полчаса.
Однако, как вы можете себе представить, каждая библиотека ускорения состоит из множества файлов cpp и многих файлов заголовков, и есть много разных вариантов каждого (отладочные версии, версии выпуска, многопоточные и т. Д.), И поэтому это не простой процесс, чтобы просто скомпилировать библиотеку boost. Именно здесь приходит форвард. Вы даете ему команду для компиляции библиотек, а затем выдает все команды для вас в компилятор, и к концу этого времени вы будете иметь коллекцию предварительно скомпилированных файлов .lib, один для каждый различный вкус каждой библиотеки. Заголовочные файлы каким-то образом сообщают компоновщику, какие файлы lib включать, поэтому, если у вас есть правильная настройка путей, правильный вкус прекомпилированного .lib-файла будет автоматически связан с вашей программой, таким образом сохраняя 30-минутную компиляцию.
Вы можете увидеть, какие библиотеки нужно скомпилировать с помощью форматирования, а какие нет у библиотек, если посмотреть на эту страницу: http://www.boost.org/doc/libs/1_37_0 - если библиотеке не нужен файл lib (и, следовательно, вам не нужно возиться с boost jam first), он скажет: «Build & Link: Header only», тогда как если библиотека требует, чтобы вы предварительно скомпилировали файл lib, он скажет: «Build & Link: Automatic linking».
Кроме того, если вы находитесь в Windows, вы можете загрузить предварительно скомпилированные .lib-файлы, чтобы вам никогда не приходилось использовать форматирование. Для этого вам нужно перейти на страницу www.boost.org, перейдите в раздел «Начало работы» и следуйте за ним полностью, чтобы убедиться, что все правильно настроено. Одна из ссылок в версии Windows на этой странице сообщает вам, где найти прекомпилированные .lib-файлы.
Просто хочу быть ясным, что я только публикую это, потому что я думал, что это может быть полезно. Я никогда не использовал варенье, но прошло несколько дней, и никто не ответил этому парню, поэтому я решил ответить из небольшого знания, которое у меня есть. –
Другие комментарии (возможно, добавленные позже) говорят, что Boost Jam - это система сборки; поэтому он выходит за рамки компиляции самих библиотек повышения. – Jaywalker
Этот ответ просто бесполезен и дезинформирован. –