[Scons-users] Mesa3D graphics library build failure when using Scons 3.0.3 and newer on Windows with Visual Studio 2017, Scons 3.0.1 is unaffected.

Liviu Prodea liviuprodea at yahoo.com
Sat Feb 16 11:21:22 EST 2019


Preparation
1. Visual Studio 2017 Community with Desktop Development with C++ toolchain installed in default location is required (my build script only supports community edition of Visual Studio at the moment);
2. Prepare an empty folder for all remaining dependencies;3. Download winflexbison from https://github.com/lexxmark/winflexbison/releases4. Extract in a folder named flexbison under folder created at step 2 or it can be added to PATH if other location is desired;
5. Python 2.7 is required. It can be installed in a folder named Python under folder created at step 2 or at a custom location added to PATH or if any Python 3.x is installed with Python launcher support it can be installed anywhere as long as Python launcher can find it;
6. Clone this repository with Git: https://github.com/pal1000/mesa-dist-win in a folder named mesa-dist-win under folder created at step 2;
7. Apply patch located at mesa-dist-win\patches\sconstest.patch to allow for Scons 3.0.2 and newer to be considered when acquiring the necessary python modules;8. Grab Mesa3D stable or release candidate source code from https://www.mesa3d.org/archive/ or if you have Git in PATH this can be deferred to the build script. 

Configure and build

1. Execute mesa-dist-win\buildscript\build.cmd2. It doesn't matter if you pick x86 or x64 target architecture;3. If using Python launcher a list of Python installations is listed, pick a Python 2.7 installation;4. The build script will automatically install all necessary Python modules;5. You don't have to install pywin32 COM support as it is not required and its installation requires admin rights as well;
6. Since I intentionally excluded the optional LLVM as a dependency as it is not required to reproduce this issue we are going straight to Mesa3D build;7. After confirming you want to build Mesa3D, if you deferred Mesa3D codebase acquisition to the build script, enter Mesa3D branch name. 18.3 or 19.0 are both fine, master is default but it may fail sometimes due to internal reasons, though it can be checked in advance with Appveyor: https://ci.appveyor.com/project/mesa3d/mesa8. To save time, off-screen rendering, graw framework and pglit tests build can be denied as this issue can be reproduced without them.
The issueRoughly 2 minutes in the build everything fails with Cannot open include file. The include file missing differs based on configuration:- if building off-screen rendering or not;- if building graw;- if also building llvmpipe (this one requires LLVM built with /MT).



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20190216/7d9cee15/attachment.html>


More information about the Scons-users mailing list