Bug 212188 - [WinCairo] WebKit failed to build due to error C3861 C2065 on windows with MSVC
Summary: [WinCairo] WebKit failed to build due to error C3861 C2065 on windows with MSVC
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: PC Windows 10
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-05-20 23:19 PDT by QuellaZhang
Modified: 2020-05-28 13:00 PDT (History)
2 users (show)

See Also:


Attachments
log_x64_build (1.52 MB, application/octet-stream)
2020-05-20 23:19 PDT, QuellaZhang
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description QuellaZhang 2020-05-20 23:19:08 PDT
Created attachment 399936 [details]
log_x64_build

Environment:
VS 2019 + Windows Server 2016

Issue description:
We tried to build WebKit using VS2019 on Windows Server 2016. WebKit failed to build due to (error C3861: 'EVP_aes_128_wrap': identifier not found) and (error C2065: 'EVP_CIPHER_CTX_FLAG_WRAP_ALLOW': undeclared identifier) on windows with MSVC. It can be reproduced on master branch latest commit f8ae026. Could you please help take a look at this? Thanks in advance!

Repro steps:
1. git clone https://github.com/WebKit/webkit F:\gitP\WebKit\webkit
2. open a VS 2019 x64 command prompt as admin and browse to F:\gitP\WebKit\webkit
3. set path=F:\tools\WebKit\tools;%path%
4. xcopy F:\tools\WebKit\WebKitLibraries\win F:\gitP\WebKit\webkit\WebKitLibraries\win /k/r/e/i/s/c/h/f/y
5. mkdir build_x64 && pushd build_x64
6. cmake -G "Visual Studio 16 2019" -A x64 -DCMAKE_SYSTEM_VERSION=10.0.18362.0 -DCMAKE_BUILD_TYPE=Release -DRUBY_LIBRARY=C:\tools\ruby26\lib -DPORT="WinCairo" -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DSHOW_BINDINGS_GENERATION_PROGRESS=1 -DDEVELOPER_MODE=ON -DENABLE_EXPERIMENTAL_FEATURES=ON ..
7. msbuild /p:Platform=x64 /p:Configuration=Release WebKit.sln /t:Rebuild

Actual result:
F:\gitP\WebKit\webkit\Source\WebCore\crypto\openssl\CryptoAlgorithmAES_KWOpenSSL.cpp(40,16): error C3861: 'EVP_aes_128_wrap': identifier not found [F:\gitP\WebKit\webkit\build_amd64\Source\WebCore\WebCore.vcxproj]
F:\gitP\WebKit\webkit\Source\WebCore\crypto\openssl\CryptoAlgorithmAES_KWOpenSSL.cpp(43,16): error C3861: 'EVP_aes_192_wrap': identifier not found [F:\gitP\WebKit\webkit\build_amd64\Source\WebCore\WebCore.vcxproj]
  CryptoKeyECOpenSSL.cpp
F:\gitP\WebKit\webkit\Source\WebCore\crypto\openssl\CryptoAlgorithmAES_KWOpenSSL.cpp(46,16): error C3861: 'EVP_aes_256_wrap': identifier not found [F:\gitP\WebKit\webkit\build_amd64\Source\WebCore\WebCore.vcxproj]
F:\gitP\WebKit\webkit\Source\WebCore\crypto\openssl\CryptoAlgorithmAES_KWOpenSSL.cpp(65,41): error C2065: 'EVP_CIPHER_CTX_FLAG_WRAP_ALLOW': undeclared identifier [F:\gitP\WebKit\webkit\build_amd64\Source\WebCore\WebCore.vcxproj]
F:\gitP\WebKit\webkit\Source\WebCore\crypto\openssl\CryptoAlgorithmAES_KWOpenSSL.cpp(97,41): error C2065: 'EVP_CIPHER_CTX_FLAG_WRAP_ALLOW': undeclared identifier [F:\gitP\WebKit\webkit\build_amd64\Source\WebCore\WebCore.vcxproj]
Comment 1 Fujii Hironori 2020-05-22 19:21:07 PDT
Do you use the latest WebKitRequirements?
https://github.com/WebKitForWindows/WebKitRequirements/releases/tag/v2020.05.08
Comment 2 QuellaZhang 2020-05-28 02:47:30 PDT
Hi Fujii,

Thanks for your reply. I tried to use latest WebKitRequirements. It can build pass. 

Thanks,
Lin
Comment 3 Fujii Hironori 2020-05-28 13:00:29 PDT
Cool.