Как включить в проект только коды смарт-указателей BOOST? - PullRequest
5 голосов
/ 25 марта 2010

Каковы рекомендации по включению библиотеки интеллектуальных указателей Boost только без добавления в проект всех библиотек Boost?

Я хочу только увеличить библиотеку интеллектуальных указателей в моем проекте, и я не хочу регистрировать / коммитить 200 МБ исходных кодов (boost 1.42.0) в мой репозиторий проекта только для этого. Более того, сам мой Windows Mobile проект даже не достигает 10% от этого размера!

Ответы [ 2 ]

16 голосов
/ 25 марта 2010

Только для библиотеки интеллектуальных указателей у вас есть два варианта.

  1. Скопируйте заголовки, которые вы включили в свои исходные файлы (shared_ptr.hpp и т. Д.). Затем скопируйте дополнительные файлы до тех пор, пока проект не будет собран (не забудьте сохранить структуру каталогов).
  2. Используйте утилиту boost bcp . Для больших подмножеств этот инструмент экономит массу времени.

Первый обеспечит добавление в ваш проект наименьшего количества файлов. Последнее намного быстрее для любого существенного подмножества надстройки, но, вероятно, будет включать много файлов, которые вам не нужны (заголовки совместимости для платформ, которые ваша программа не поддерживает).

2 голосов
/ 25 марта 2010

Просто войдите в папку, содержащую нужный код? Попробуйте удалить / переместить / переименовать «все остальное» и посмотреть, какие внешние зависимости есть у библиотеки интеллектуальных указателей, вероятно, не так много. Я почти уверен, что для этого не требуется никакого встроенного кода (то есть библиотеки), так что простая проверка всех заголовков, которые включаются, кажется правильным.

...