Невозможно собрать Boost с MinGW, он ищет Visual C++

Сначала я попытался собрать Boost с установленными MinGW и Microsoft Visual C++ с помощью следующих команд:

bootstrap.bat mingw
.\b2

В процессе сборки у меня было много строк журнала, указывающих, что сборка выполняется для Visual C++ (msvc). Поэтому я остановил его, я полностью удалил Visual C++ (с помощью утилиты Windows), удалил каталог Boost, воссоздал его из файла bz2 и проверил, что g++.exe был в ПУТИ, и я повторно ввел две предыдущие команды, чтобы переустановить Boost с нуля.

Я продолжаю получать сборку msvc... Что еще я могу сделать?


Консоль Windows
Из журналов кажется, что не выбрана конфигурация:

> .\b2

Building the Boost C++ Libraries.

Performing configuration checks

    - 32-bit                   : no  (cached)
    - 64-bit                   : no  (cached)
    - arm                      : no  (cached)
    - mips1                    : no  (cached)
    - power                    : no  (cached)
    - sparc                    : no  (cached)
    - x86                      : no  (cached)
    - has_icu builds           : no  (cached)

Консоль MinGW

$ ./bootstrap.sh

###
### Using 'gcc' toolset.
###
rm -rf bootstrap
mkdir bootstrap
gcc -o bootstrap/jam0 command.c compile.c constants.c debug.c execcmd.c frames.c function.c glob.c hash.c hdrmacro.c headers.c jam.c jambase.c jamgram.c lists.c make.c make1.c object.c option.c output.c parse.c pathsys.c pathunix.c regexp.c rules.c scan.c search.c subst.c timestamp.c variable.c modules.c strings.c filesys.c builtins.c class.c cwd.c native.c md5.c w32_getreg.c modules/set.c modules/path.c modules/regex.c modules/property-set.c modules/sequence.c modules/order.c execunix.c fileunix.c
builtins.c:34:23: fatal error: sys/wait.h: No such file or directory
compilation terminated.
execunix.c:20:26: fatal error: sys/resource.h: No such file or directory
compilation terminated.
fileunix.c:96:17: fatal error: ar.h: No such file or directory
compilation terminated.

Эти файлы фактически отсутствуют. Разве они не должны быть частью MinGW?

1 ответ

Решение

Build Boost с Mingw

открытые окна cmd
cd на ваш boost_1_53_0 папка.

Чтобы получить чистый путь среды
тип (измените свой путь Mingw)

set PATH=C:\mingw\bin

проверить: наберите

path

выход: PATH=C:\mingw\bin

тип

bootstrap mingw

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

.\b2 --build-dir=C:\boost-mingw toolset=gcc variant=debug link=shared runtime-link=shared

Есть и другие способы повышения. Но вышеуказанных шагов должно быть достаточно.

Другие вопросы по тегам