Subject: [Boost-bugs] [Boost C++ Libraries] #9301: Error when attempting to boot strap boost
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-10-25 16:38:30
#9301: Error when attempting to boot strap boost
--------------------------------+-------------------------------------
Reporter: Ben Key <BKey76@â¦> | Type: Bugs
Status: new | Milestone: Boost 1.55.0
Component: Building Boost | Version: Boost Development Trunk
Severity: Showstopper | Keywords:
--------------------------------+-------------------------------------
Error when attempting to bootstrap boost
Hello,
I am getting the following error when attempting to run "bootstrap.bat
mingw."
Building Boost.Build engine
builtins.c: In function 'builtin_readlink':
builtins.c:1879:39: error: 'FSCTL_GET_REPARSE_POINT' undeclared (first use
in this function)
int okay = DeviceIoControl(hLink, FSCTL_GET_REPARSE_POINT, NULL, 0,
&buf, sizeof(buf), &n, NULL);
^
builtins.c:1879:39: note: each undeclared identifier is reported only once
for each function it appears in
Failed to build Boost.Build engine.
Please consult bootstrap.log for further diagnostics.
This error does not happen with MSVC but it does happen with MinGW.
For both MinGW and MSVC, FSCTL_GET_REPARSE_POINT is defined in winioctl.h.
However, this header file is not directly included in builtins.c. Only
Windows.h is directly included in builtins.c.
This compiles for MSVC because winioctl.h is included by winscard.h which
is in turn included by Windows.h. But winscard.h does not even exist in
the MinGW header files and the MinGW version of Windows.h does not include
winioctl.h. Thus winioctl.h is not indirectly included as it is in MSVC.
The solution is obvious. Do not assume that the header fill will be
indirectly included as a side effect of including Windows.h. Instead
modify builtins.c to directly include winioctl.h. With this one line
change the error is resolved.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/9301> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:14 UTC