C++. Сборник рецептов | страница 42
Правило >install
указывает Boost.Build скопировать один или несколько файлов, указанных как имена файлов или как имена главных целей, в указанное место. Вызов этого правила имеет вид, показанный в примере 1.10.
Пример 1.10. Вызов правила install
>install имя-цели
> : файлы
> : требования
> : сборка-по-умолчанию
> : требования-к-использованию
> ;
Здесь >имя-цели
— это имя объявляемой цели, а >файлы
— это список из одного или более файлов или целей, которые требуется скопировать. Остальные аргументы — >требования
, >сборка-по-умолчанию
и >требования-к-использованию
— имеют такие же значения, как и в примере 1.9.
Место, куда файлы должны быть скопированы, может указываться либо как имя цели, либо как значение свойства >location
требований цели. Например, в примере 1.8 можно написать цель >install
следующим образом.
>install . : hello ;
Затем установка исполняемого файла выполняется так:
>> bjam .
Однако метод, использованный в примере 1.8, предпочтителен, так как проще запомнить именованную цель, чем путь файла.
Наконец, давайте быстро взглянем на синтаксис командной строки bjam. Чтобы собрать цель >xxx
, используя инструментарий по умолчанию, введите команду:
>> bjam xxx
Чтобы собрать цель >xxx
, используя инструментарий >yyy
, введите команду:
>> bjam xxxtoolset=yyy
Чтобы собрать цель >xxx
, используя версию >vvv
инструментария >yyy
, введите команду:
>> bjam хххtoolset=yyy-vvv
Чтобы в командной строке указать использовать при сборке стандартную библиотеку >zzz
, используйте синтаксис:
>> bjamxxxstdlib=zzz
Чтобы собрать несколько целей одновременно, введите в командной строке несколько имен целей, а чтобы собрать все цели данного проекта, не указывайте целей. Следовательно, чтобы собрать и установить исполняемый файл из примера 1.9, просто введите:
>> bjam
Чтобы удалить все файлы, созданные в процессе сборки, включая исполняемый файл, введите:
>> bjam --clean
Свойство в виде ><функция>значение
может быть указано в командной строке как >функция=значение
.
Рецепты 1.2 и 1.15.
1.8. Сборка статической библиотеки с помощью Boost.Build
Вы хотите использовать Boost.Build для сборки статической библиотеки из набора исходных файлов С++, таких как перечисленные в примере 1.1.