Discussion:
[CMake] Visual Studio 2015 Generator crash 3.13
Harry Mallon
2018-11-22 18:23:03 UTC
Permalink
Hi,

I just updated to CMake 3.13 (to get the IPO in Visual Studio). I am using Visual Studio Build tools 2017 (with 2015 extra tools installed).

This crashes (without any feedback):
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" x86_x64 -vcvars_ver=14.0
cmake -Ax64 -G"Visual Studio 14 2015" -DHDE_CREATE_DOCS=%MAKE_DOCS% -DBOOST_ROOT="C:\Libraries\boost_1_66_0" ../

However this works fine:
cmake -Ax64 -G"Visual Studio 15 2017" -DHDE_CREATE_DOCS=%MAKE_DOCS% -DBOOST_ROOT="C:\Libraries\boost_1_66_0" ../

Any ideas? I don’t have a debugger on Windows to look at it at the moment.

Best,
Harry

Harry Mallon

Senior Software Engineer

[http://codex.online/?action=asset&id=E3D62C3D-A12C-447D-87A5-F36E7C2AA9A4]<https://codex.online/>

T +44 203 7000 989<callto:+44%20203%207000%20989>

60 Poland Street | London | England | W1F 7NT

[http://admin.codex.online/?action=asset&id=132CD8A9-76B5-48B4-80D3-F5E5C57FB76E]
A Star is Born Halloween 13 Reasons Why
Niels Dekker
2018-11-23 10:35:39 UTC
Permalink
Hi Harry,

Sorry to hear you got a crash while trying to generate a VS2015 project
using CMake 3.13. I just tried to reproduce your issue, but I could not.
Do you already get the crash with the following CMakeLists?

cmake_minimum_required( VERSION 3.13)
project(MyProject)
add_executable(MyProject MySource.cpp)
set_property(TARGET MyProject
PROPERTY INTERPROCEDURAL_OPTIMIZATION_RELEASE TRUE)

Below here, my command-line output (no crash).


F:\X\Src\MyProject\bin>call "C:\Program Files (x86)\Microsoft Visual
Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x86_x64
-vcvars_ver=14.0
**********************************************************************
** Visual Studio 2017 Developer Command Prompt v15.8.9
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x86_x64'

F:\X\Src\MyProject\bin>cmake -Ax64 -G"Visual Studio 14 2015"
-DHDE_CREATE_DOCS=%MAKE_DOCS% -DBOOST_ROOT="C:\Libraries\boost_1_66_0"
../
-- Selecting Windows SDK version 10.0.14393.0 to target Windows
10.0.17134.
-- The C compiler identification is MSVC 19.0.24215.1
-- The CXX compiler identification is MSVC 19.0.24215.1
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual
Studio 14.0/VC/bin/x86_amd64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual
Studio 14.0/VC/bin/x86_amd64/cl.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft
Visual Studio 14.0/VC/bin/x86_amd64/cl.exe
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft
Visual Studio 14.0/VC/bin/x86_amd64/cl.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:

BOOST_ROOT
HDE_CREATE_DOCS


-- Build files have been written to: F:/X/Src/MyProject/bin
Post by Harry Mallon
I just updated to CMake 3.13 (to get the IPO in Visual Studio). I am
using Visual Studio Build tools 2017 (with 2015 extra tools
installed).
call "C:\Program Files (x86)\Microsoft Visual
Studio\2017\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" x86_x64
-vcvars_ver=14.0
cmake -Ax64 -G"Visual Studio 14 2015" -DHDE_CREATE_DOCS=%MAKE_DOCS%
-DBOOST_ROOT="C:\Libraries\boost_1_66_0" ../
cmake -Ax64 -G"Visual Studio 15 2017" -DHDE_CREATE_DOCS=%MAKE_DOCS%
-DBOOST_ROOT="C:\Libraries\boost_1_66_0" ../
Any ideas? I don’t have a debugger on Windows to look at it at the
moment.
--
Niels Dekker
Scientific programmer
LKEB, Leiden University Medical Center
--
Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.
Harry Mallon
2018-11-23 13:18:59 UTC
Permalink
Hi Niels,

Apologies for not replying inline, that email didn’t get through (except in the digest). I can reproduce it with that short project file (also with the INTERPROCEDURAL_OPTIMIZATION_RELEASE line commented out).

I have just spent some time trying to debug it, but I don’t have a full copy of Visual Studio. I have this information from CDB.exe. Is that more use?

=============================================
C:\Users\root\temp\build>"C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\cdb.exe" -g -y "C:\Users\root\Downloads\cmake-3.13.0\cmake-3.13.0\build\bin\cmake.pdb" "C:\Users\root\Downloads\cmake-3.13.0\cmake-3.13.0\build\bin\cmake.exe" -Ax64 -G"Visual Studio 14 2015" ../

Microsoft (R) Windows Debugger Version 10.0.17763.132 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.

CommandLine: "C:\Users\root\Downloads\cmake-3.13.0\cmake-3.13.0\build\bin\cmake.exe" -Ax64 -G"Visual Studio 14 2015" ../
Error: Change all symbol paths attempts to access 'C:\Users\root\Downloads\cmake-3.13.0\cmake-3.13.0\build\bin\cmake.pdb' failed: 0x57 - The parameter is incorrect.

************* Path validation summary **************
Response Time (ms) Location
Error C:\Users\root\Downloads\cmake-3.13.0\cmake-3.13.0\build\bin\cmake.pdb
Symbol search path is: C:\Users\root\Downloads\cmake-3.13.0\cmake-3.13.0\build\bin\cmake.pdb
Executable search path is:
ModLoad: 00007ff7`6b160000 00007ff7`6c6ae000 cmake.exe
ModLoad: 00007ffd`2e000000 00007ffd`2e1e1000 ntdll.dll
< -- snip -- >
(3100.3104): C++ EH exception - code e06d7363 (first chance)
(3100.3104): C++ EH exception - code e06d7363 (!!! second chance !!!)
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\System32\KERNELBASE.dll -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\SYSTEM32\VCRUNTIME140D.dll -
KERNELBASE!RaiseException+0x68:
00007ffd`2a4aa388 488b8c24c0000000 mov rcx,qword ptr [rsp+0C0h] ss:00000029`62788fc0=0000582dcaa7f282
0:000>
=============================================

Thanks,
Harry

Harry Mallon

Senior Software Engineer

[http://codex.online/?action=asset&id=E3D62C3D-A12C-447D-87A5-F36E7C2AA9A4]<https://codex.online/>

T +44 203 7000 989<callto:+44%20203%207000%20989>

60 Poland Street | London | England | W1F 7NT

[http://admin.codex.online/?action=asset&id=132CD8A9-76B5-48B4-80D3-F5E5C57FB76E]
A Star is Born Halloween 13 Reasons Why
Niels Dekker
2018-11-23 14:52:43 UTC
Permalink
Hi Harry,

Sorry I don't know how to interpret the CDB.exe dump you gave. Maybe
someone else on the mailing list...? So you have the crash, even with a
minimal CMakeLists.txt of three lines:

cmake_minimum_required(VERSION 3.13)
project(MyProject)
add_executable(MyProject MySource.cpp)

And the following command:
cmake.exe" -Ax64 -G"Visual Studio 14 2015" ../

I just built a Debug (x64) version of cmake.exe on VS2015, directly from
https://gitlab.kitware.com/cmake/cmake.git and tried to reproduce your
issue, but again, no crash at all.

Do you get this crash with the previous release version (CMake 3.12.4)
as well? Or are you 100% sure that it is introduced with 3.13?
Post by Harry Mallon
Hi Niels,
Apologies for not replying inline, that email didn’t get through
(except in the digest). I can reproduce it with that short project
file (also with the INTERPROCEDURAL_OPTIMIZATION_RELEASE line
commented out).
I have just spent some time trying to debug it, but I don’t have a
full copy of Visual Studio. I have this information from CDB.exe. Is
that more use?
--
Niels Dekker
Scientific programmer
LKEB, Leiden University Medical Center
--
Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscri
Harry Mallon
2018-11-23 15:17:43 UTC
Permalink
Hi again all,

I have some more information.

https://gitlab.kitware.com/cmake/cmake/commit/83ddc4d2891a0bbb06fb1e3daa00245b3c23eddc

That commit causes the crash. When sdks[0] is used I have no SDKs left in the list as it finds 2 but both are a higher version than "10.0.14393.0" which is apparently “The last Windows 10 SDK version that VS 2015 can target”.

I am currently downloading a lower SDK version to test.

Harry

Harry Mallon

Senior Software Engineer

[http://codex.online/?action=asset&id=E3D62C3D-A12C-447D-87A5-F36E7C2AA9A4]<https://codex.online/>

T +44 203 7000 989<callto:+44%20203%207000%20989>

60 Poland Street | London | England | W1F 7NT

[http://admin.codex.online/?action=asset&id=132CD8A9-76B5-48B4-80D3-F5E5C57FB76E]
A Star is Born Halloween 13 Reasons Why

Continue reading on narkive:
Loading...