boostorg / boostorg/process

process fails to compile in boost 1.86.0 on windows

Open
#420 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
145
Forks
151
PR merge metrics
No merged PRs in 30d

Description

I'm compiling boost on windows and boost process fails to compile.

Compilation done by following commands in boost src folder.
```
bootstrap.bat
b2.exe -d4 --build-type=minimal stage variant=release address-model=32 link=shared threading=multi runtime-link=shared debug-symbols=on debug-store=database -j%NUMBER_OF_PROCESSORS% --layout=
system --with-process --build-dir=..\boost_build --stagedir=..\boost_stage\ %XP_TOOLSET_DEFINES% > bjam.log 2>&1
```

I've used `--with-process` just to cut down compile time and log to reproduce problem, same happens if this flag is not used.
After this is done several libs are compiled in `..\boost_stage\lib` (atomic and filesystem) but process is not.

Log file is attached [bjam.log.zip](https://github.com/user-attachments/files/17575091/bjam.log.zip), I think the root cause are those compilation errors:
```
Executing using a command file and the shell: cmd.exe /Q/C
Command string for CreateProcessA(): 'cmd.exe /Q/C "C:\Users\Admin\AppData\Local\Temp\jam15820-05-00.bat"'
compile-c-c++ ..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\ext\exe.obj

call "..\boost_build\boost\bin.v2\standalone\msvc\msvc-14.3\address-model-32\architecture-x86\msvc-setup.bat" >nul
cl /Zm800 -nologo "libs\process\src\ext\exe.cpp" -c -Fo"..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\ext\exe.obj" /Fd"..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\ext\exe.pdb" -TP /wd4675 /EHs /GR /Zc:throwingNew /O2 /Zi /Ob2 /W3 /MD /Zc:forScope /Zc:wchar_t /Zc:inline /Gw /bigobj -DBOOST_ALL_NO_LIB=1 -DBOOST_ASIO_NO_DEPRECATED -DBOOST_ATOMIC_DYN_LINK=1 -DBOOST_COBALT_USE_STD_PMR=1 -DBOOST_FILESYSTEM_DYN_LINK=1 -DBOOST_PROCESS_DYN_LINK=1 -DBOOST_PROCESS_SOURCE=1 -DNDEBUG -DNTDDI_VERSION=0x05010000 -DPSAPI_VERSION=1 -DWIN32_LEAN_AND_MEAN -DWINVER=0x0501 -D_CRT_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_WIN32_WINNT=0x0501 "-I."

exe.cpp
libs\process\src\ext\exe.cpp(78): error C3861: 'QueryFullProcessImageNameW': identifier not found
0.125000 sec system; 0.031250 sec user; 3.299207 sec clock
...failed compile-c-c++ ..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\ext\exe.obj...
```

```
Command string for CreateProcessA(): 'cmd.exe /Q/C "C:\Users\Admin\AppData\Local\Temp\jam15820-01-00.bat"'
compile-c-c++ ..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\windows\default_launcher.obj

call "..\boost_build\boost\bin.v2\standalone\msvc\msvc-14.3\address-model-32\architecture-x86\msvc-setup.bat" >nul
cl /Zm800 -nologo "libs\process\src\windows\default_launcher.cpp" -c -Fo"..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\windows\default_launcher.obj" /Fd"..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\windows\default_launcher.pdb" -TP /wd4675 /EHs /GR /Zc:throwingNew /O2 /Zi /Ob2 /W3 /MD /Zc:forScope /Zc:wchar_t /Zc:inline /Gw /bigobj -DBOOST_ALL_NO_LIB=1 -DBOOST_ASIO_NO_DEPRECATED -DBOOST_ATOMIC_DYN_LINK=1 -DBOOST_COBALT_USE_STD_PMR=1 -DBOOST_FILESYSTEM_DYN_LINK=1 -DBOOST_PROCESS_DYN_LINK=1 -DBOOST_PROCESS_SOURCE=1 -DNDEBUG -DNTDDI_VERSION=0x05010000 -DPSAPI_VERSION=1 -DWIN32_LEAN_AND_MEAN -DWINVER=0x0501 -D_CRT_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_WIN32_WINNT=0x0501 "-I."

default_launcher.cpp
D:\Projects\boost\boost/process/v2/windows/default_launcher.hpp(220): error C3646: 'startup_info': unknown override specifier
D:\Projects\boost\boost/process/v2/windows/default_launcher.hpp(220): error C2059: syntax error: '{'
D:\Projects\boost\boost/process/v2/windows/default_launcher.hpp(220): error C2334: unexpected token(s) preceding '{'; skipping apparent function body
0.078125 sec system; 0.046875 sec user; 3.474433 sec clock
...failed compile-c-c++ ..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\windows\default_launcher.obj...
```

```
Command string for CreateProcessA(): 'cmd.exe /Q/C "C:\Users\Admin\AppData\Local\Temp\jam15820-04-00.bat"'
compile-c-c++ ..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\environment.obj

call "..\boost_build\boost\bin.v2\standalone\msvc\msvc-14.3\address-model-32\architecture-x86\msvc-setup.bat" >nul
cl /Zm800 -nologo "libs\process\src\environment.cpp" -c -Fo"..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\environment.obj" /Fd"..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\environment.pdb" -TP /wd4675 /EHs /GR /Zc:throwingNew /O2 /Zi /Ob2 /W3 /MD /Zc:forScope /Zc:wchar_t /Zc:inline /Gw /bigobj -DBOOST_ALL_NO_LIB=1 -DBOOST_ASIO_NO_DEPRECATED -DBOOST_ATOMIC_DYN_LINK=1 -DBOOST_COBALT_USE_STD_PMR=1 -DBOOST_FILESYSTEM_DYN_LINK=1 -DBOOST_PROCESS_DYN_LINK=1 -DBOOST_PROCESS_SOURCE=1 -DNDEBUG -DNTDDI_VERSION=0x05010000 -DPSAPI_VERSION=1 -DWIN32_LEAN_AND_MEAN -DWINVER=0x0501 -D_CRT_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_WIN32_WINNT=0x0501 "-I."

environment.cpp
D:\Projects\boost\boost/process/v2/windows/default_launcher.hpp(220): error C3646: 'startup_info': unknown override specifier
D:\Projects\boost\boost/process/v2/windows/default_launcher.hpp(220): error C2059: syntax error: '{'
D:\Projects\boost\boost/process/v2/windows/default_launcher.hpp(220): error C2334: unexpected token(s) preceding '{'; skipping apparent function body
0.093750 sec system; 0.031250 sec user; 3.934528 sec clock
...failed compile-c-c++ ..\boost_build\boost\bin.v2\libs\process\build\msvc-14.3\release\x86_32\debug-store-database\debug-symbols-on\threading-multi\environment.obj...
```

How can this be fixed?

Thank you very much in advance :).

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.