Using cmb-superbuild:master, a strange error occurred building a third-partly lib, taotuple, under vtkm. The message is that the std::swap function does not take 1 argument. @ben.boeckel can you advise on this?
cl : Command line warning D9025 : overriding '/W4' with '/W3'
c:\users\johnt\documents\ace3p\build\dev-superbuild\superbuild\paraview\src\vtk\thirdparty\vtkm\vtkvtkm\vtk-m\vtkm\thirdparty\taotuple\vtkmtaotuple\include\tao/tuple/tuple.hpp(104): error C2660: 'std::swap': function does not take 1 arguments
C:\Users\johnt\Documents\ace3p\build\dev-superbuild\superbuild\paraview\src\VTK\ThirdParty\vtkm\vtkvtkm\vtk-m\vtkm/cont/ArrayHandleDecorator.h(327): fatal error C1903: unable to recover from previous error(s); stopping compilation
Aside, there are also numerous warnings about /W4 vs /W3 that appear in many places.
The compile error occurs using VS2017 Version 15.0.26228.96 which, per this microsoft page, was released August 13.
Per this stackoverflow note, the “15.0” versions are the long-term-support releases that only include hot fixes. The other 15.x versions include both hot fixes and feature updates.
And, sure enough, the compile error does NOT occur using the latest, not-long-term-support VS2017 (Version 15.9.17), which was released October 15. Evidently the source line in tuple.hpp requires a feature update that is not in the baseline VS2017. Go figure.
Aside, because I am moving to VS2019 for future windows builds, the point has probably become moot. Nonetheless, my thanks to Rob & Allison for helping solve the mystery.
Progress for me - I’m able to complete a superbuild and an smtk build with VS2019 (and external QT 5.12). However, when I try to run tests in smtk, the unittests all fail with Exit code 0xc0000135.
I have not investigated further.
Windows is a tricky beast. You need to set your path correctly in order to run unit tests. For example, Kerbin’s environment for testing SMTK is as follows:
OK, now we have a customer that has a bug that only reproduces on windows. So I installed the VS2019 redistrubutable (even though I have VS2019 installed) and it solved the missing DLLs running ctest from bash. I am not able to run python tests from inside ctest - however, I can set PYTHONPATH and run the command by hand successfully.
I have a superbuild build at d:/akit/cmb/sb/build and an smtk developer build at d:/akit/cmb/smtk/build, here’s what I set in bash: