Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Trouble compiling the library with MSVC on windows-2019 runner (Github actions) #5

Open
Arcticae opened this issue Jan 13, 2022 · 1 comment

Comments

@Arcticae
Copy link

As listed in the title - i tried compiling the library on windows runner and it doesn't seem to work for me, some syntax errors are an issue. Stacktrace below:

2022-01-13T18:15:35.6342205Z Build started 1/13/2022 6:15:35 PM.
2022-01-13T18:15:35.9825767Z Project "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\ALL_BUILD.vcxproj" on node 1 (default targets).
2022-01-13T18:15:35.9828090Z Project "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\ALL_BUILD.vcxproj" (1) is building "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\ZERO_CHECK.vcxproj" (2) on node 1 (default targets).
2022-01-13T18:15:35.9835247Z PrepareForBuild:
2022-01-13T18:15:35.9836058Z   Creating directory "x64\Debug\ZERO_CHECK\".
2022-01-13T18:15:35.9938410Z   Creating directory "x64\Debug\ZERO_CHECK\ZERO_CHECK.tlog\".
2022-01-13T18:15:35.9999507Z InitializeBuildStatus:
2022-01-13T18:15:36.0000765Z   Creating "x64\Debug\ZERO_CHECK\ZERO_CHECK.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
2022-01-13T18:15:36.1228924Z CustomBuild:
2022-01-13T18:15:36.1230165Z   Checking Build System
2022-01-13T18:15:36.2341628Z FinalizeBuildStatus:
2022-01-13T18:15:36.2343016Z   Deleting file "x64\Debug\ZERO_CHECK\ZERO_CHECK.tlog\unsuccessfulbuild".
2022-01-13T18:15:36.2344895Z   Touching "x64\Debug\ZERO_CHECK\ZERO_CHECK.tlog\ZERO_CHECK.lastbuildstate".
2022-01-13T18:15:36.2352155Z Done Building Project "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\ZERO_CHECK.vcxproj" (default targets).
2022-01-13T18:15:36.3763552Z Project "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\ALL_BUILD.vcxproj" (1) is building "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\crypto\ffi\js\js_test.vcxproj" (3) on node 1 (default targets).
2022-01-13T18:15:36.3766495Z Project "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\crypto\ffi\js\js_test.vcxproj" (3) is building "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\crypto\ffi\crypto_c_exports.vcxproj" (4) on node 1 (default targets).
2022-01-13T18:15:36.3769063Z Project "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\crypto\ffi\crypto_c_exports.vcxproj" (4) is building "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj" (5) on node 1 (default targets).
2022-01-13T18:15:36.3770686Z PrepareForBuild:
2022-01-13T18:15:36.3771366Z   Creating directory "algebra.dir\Debug\".
2022-01-13T18:15:36.3785009Z   Creating directory "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\Debug\".
2022-01-13T18:15:36.3786683Z   Creating directory "algebra.dir\Debug\algebra.tlog\".
2022-01-13T18:15:36.3801309Z InitializeBuildStatus:
2022-01-13T18:15:36.3802513Z   Creating "algebra.dir\Debug\algebra.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
2022-01-13T18:15:36.4228828Z CustomBuild:
2022-01-13T18:15:36.4230808Z   Building Custom Rule D:/a/starknet.py/starknet.py/crypto-cpp/src/starkware/algebra/CMakeLists.txt
2022-01-13T18:15:36.5237727Z ClCompile:
2022-01-13T18:15:36.5240870Z   C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\CL.exe /c /I"D:\a\starknet.py\starknet.py\crypto-cpp\src" /Zi /nologo /W3 /WX /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /std:c++17 /Fo"algebra.dir\Debug\\" /Fd"D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\Debug\algebra.pdb" /external:W3 /Gd /TP /errorReport:queue  -g "D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware\algebra\prime_field_element.cc"
2022-01-13T18:15:36.6053945Z cl : command line warning D9002: ignoring unknown option '-g' [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:36.6055867Z   prime_field_element.cc
2022-01-13T18:15:41.1409387Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(18,44): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.1716604Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(18,44): error C2737: 'starkware::__uint128_t': constexpr object must be initialized [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.1719041Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(18,25): error C2737: 'starkware::__uint128_t': constexpr object must be initialized [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.2125013Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(18,37): error C2146: syntax error: missing ';' before identifier 'Umul128' [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.2131837Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(18,69): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.2134116Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(19,22): error C2061: syntax error: identifier '__uint128_t' [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.2136741Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(20,1): warning C4508: 'starkware::Umul128': function should return a value; 'void' return type assumed [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.3345932Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/utils/math.h(24,15): error C3861: '__builtin_clzll': identifier not found [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.4101178Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/utils/math.h(21,25): error C3615: constexpr function 'starkware::Log2Floor' cannot result in a constant expression [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.4439982Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/utils/math.h(25): message : failure was caused by control reaching the end of a constexpr function [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.7106018Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware\algebra\prime_field_element.cc(9,32): error C2131: expression did not evaluate to a constant [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.7108539Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware\algebra\prime_field_element.cc(9,49): message : function violates 'constexpr' rules or has errors [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.7110943Z D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware\algebra\prime_field_element.cc(9,49): message : see usage of 'starkware::Log2Floor' [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8122365Z Done Building Project "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj" (default targets) -- FAILED.
2022-01-13T18:15:41.8615558Z Done Building Project "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\crypto\ffi\crypto_c_exports.vcxproj" (default targets) -- FAILED.
2022-01-13T18:15:41.8620430Z Done Building Project "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\crypto\ffi\js\js_test.vcxproj" (default targets) -- FAILED.
2022-01-13T18:15:41.8636275Z Done Building Project "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\ALL_BUILD.vcxproj" (default targets) -- FAILED.
2022-01-13T18:15:41.8654208Z 
2022-01-13T18:15:41.8655826Z Build FAILED.
2022-01-13T18:15:41.8691179Z 
2022-01-13T18:15:41.8702752Z "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\ALL_BUILD.vcxproj" (default target) (1) ->
2022-01-13T18:15:41.8704363Z "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\crypto\ffi\js\js_test.vcxproj" (default target) (3) ->
2022-01-13T18:15:41.8706018Z "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\crypto\ffi\crypto_c_exports.vcxproj" (default target) (4) ->
2022-01-13T18:15:41.8707483Z "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj" (default target) (5) ->
2022-01-13T18:15:41.8708465Z (ClCompile target) -> 
2022-01-13T18:15:41.8709572Z   cl : command line warning D9002: ignoring unknown option '-g' [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8711770Z   D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(20,1): warning C4508: 'starkware::Umul128': function should return a value; 'void' return type assumed [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8713144Z 
2022-01-13T18:15:41.8713473Z 
2022-01-13T18:15:41.8714290Z "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\ALL_BUILD.vcxproj" (default target) (1) ->
2022-01-13T18:15:41.8715910Z "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\crypto\ffi\js\js_test.vcxproj" (default target) (3) ->
2022-01-13T18:15:41.8717355Z "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\crypto\ffi\crypto_c_exports.vcxproj" (default target) (4) ->
2022-01-13T18:15:41.8718792Z "D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj" (default target) (5) ->
2022-01-13T18:15:41.8719747Z (ClCompile target) -> 
2022-01-13T18:15:41.8721292Z   D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(18,44): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8723948Z   D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(18,44): error C2737: 'starkware::__uint128_t': constexpr object must be initialized [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8727349Z   D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(18,25): error C2737: 'starkware::__uint128_t': constexpr object must be initialized [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8730472Z   D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(18,37): error C2146: syntax error: missing ';' before identifier 'Umul128' [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8732989Z   D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(18,69): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8735757Z   D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/algebra/big_int.h(19,22): error C2061: syntax error: identifier '__uint128_t' [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8737996Z   D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/utils/math.h(24,15): error C3861: '__builtin_clzll': identifier not found [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8743027Z   D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware/utils/math.h(21,25): error C3615: constexpr function 'starkware::Log2Floor' cannot result in a constant expression [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8745820Z   D:\a\starknet.py\starknet.py\crypto-cpp\src\starkware\algebra\prime_field_element.cc(9,32): error C2131: expression did not evaluate to a constant [D:\a\starknet.py\starknet.py\crypto-cpp\build\Release\src\starkware\algebra\algebra.vcxproj]
2022-01-13T18:15:41.8749717Z 
2022-01-13T18:15:41.8750390Z     2 Warning(s)
2022-01-13T18:15:41.8750902Z     9 Error(s)
2022-01-13T18:15:41.8751262Z 
2022-01-13T18:15:41.8751720Z Time Elapsed 00:00:06.23

Any help in getting this to pass would be appreciated. Note that i'm not c++ expert - just trying to precompile the library to include it in starknet.py's wheels for windows

@Arcticae
Copy link
Author

Some other people also had similar issues with MSVC - i managed to make it work using MinGW for Windows (64 bit), but MSVC issue still persists for me

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

No branches or pull requests

1 participant