Skip to content
This repository has been archived by the owner on Oct 28, 2021. It is now read-only.

Build fails on Windows because yaml-cpp fails to build #5516

Closed
damian123 opened this issue Mar 8, 2019 · 5 comments · Fixed by #5719
Closed

Build fails on Windows because yaml-cpp fails to build #5516

damian123 opened this issue Mar 8, 2019 · 5 comments · Fixed by #5719
Assignees
Labels

Comments

@damian123
Copy link

I have an problem building aleth on Windows because yaml-cpp fails.

I ran this command:
cmake .. -DCMAKE_GENERATOR_PLATFORM=x64
But I get an error in the hunter part

C:.hunter_Base\c4cfcc0\1643554\402d68a\Build\yaml-cpp\Source\include\yaml-cpp/exceptions.h(208): error C3646: '_NOEXCEPT': unknown override specifier [C:.hunter_Base\c4cfcc0\1643554\402d68a\Build\yaml-cpp\Build\yaml-cpp-Release-prefix\src\yaml-cpp-Release-build\yaml-cpp.vcxproj] [C:.hunter_Base\c4cfcc0\1643554\402d68a\Build\yaml-cpp\Build\yaml-cpp-Release.vcxproj]

The complete output is build.txt

I am on Windows 10, Visual Studio 2017 and cmake 3.13.4

@halfalicious
Copy link
Contributor

Can you try:

  1. cmake .. -G "Visual Studio 14 2015 Win64"
  2. cmake --build . --config <Debug|RelWithDebInfo>

@damian123
Copy link
Author

damian123 commented Mar 10, 2019

cmake .. -G "Visual Studio 14 2015 Win64" fails because I have VS 2017 installed.
When I run cmake .. -G "Visual Studio 15 2017 Win64" I get the same error as above.

I had a deeper look at it turns out yaml-cpp uses Travis CI which does not support Visual Studio 2017 C++ yet.

BTW.: I could not find any CI tests for Visual Studio 2017.

@chfast
Copy link
Member

chfast commented Mar 27, 2019

We also don't support Virtual Studio 2017 yet.

@LtTofu
Copy link

LtTofu commented Apr 30, 2019

Hello, I am just following up as to if a workaround is known for the use of VS2017. Thank you!

@halfalicious halfalicious self-assigned this Aug 18, 2019
@halfalicious
Copy link
Contributor

I believe this will be fixed by upgrading Hunter to the latest version (v0.23.211) (archive link) - the reason that the dependencies fail to build when generating the VS 2017 solution is because YAML-CPP has a workaround for VS's lack of noexcept which uses a token that's no longer present on VS2017 >= 15.8 (_NOEXCEPT). This was fixed in YAML-CPP release 0.6.2-p1 (fix commit), but the version of Hunter that Aleth currently uses (0.23.178) only has YAML-CPP version 0.6.2-p0.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants