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

[openssl] Build error on x64-windows #38723

Open
Advik-B opened this issue May 14, 2024 · 3 comments
Open

[openssl] Build error on x64-windows #38723

Advik-B opened this issue May 14, 2024 · 3 comments
Assignees
Labels
category:port-bug The issue is with a library, which is something the port should already support

Comments

@Advik-B
Copy link

Advik-B commented May 14, 2024

Copy issue body from P:/Github/Discord_Bot/deps/vcpkg/installed/vcpkg/issue_body.md

Package: openssl:x64-windows@3.3.0#1

Host Environment

  • Host: x64-windows
  • Compiler: MSVC 19.39.33523.0
  • vcpkg-tool version: 2024-04-23-d6945642ee5c3076addd1a42c331bbf4cfc97457
    vcpkg-scripts version: f4456c1 2024-05-13 (12 hours ago)

To Reproduce

vcpkg install dpp

Failure logs

-- Using cached openssl-openssl-openssl-3.3.0.tar.gz.
-- Cleaning sources at P:/Github/Discord_Bot/deps/vcpkg/buildtrees/openssl/src/nssl-3.3.0-961d78b8a1.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source P:/Github/Discord_Bot/deps/vcpkg/downloads/openssl-openssl-openssl-3.3.0.tar.gz
-- Applying patch cmake-config.patch
-- Applying patch command-line-length.patch
-- Applying patch script-prefix.patch
-- Applying patch windows/install-layout.patch
-- Applying patch windows/install-pdbs.patch
-- Applying patch unix/android-cc.patch
-- Applying patch unix/move-openssldir.patch
-- Applying patch unix/no-empty-dirs.patch
-- Applying patch unix/no-static-libs-for-shared.patch
-- Using source at P:/Github/Discord_Bot/deps/vcpkg/buildtrees/openssl/src/nssl-3.3.0-961d78b8a1.clean
-- Found external ninja('1.11.0').
-- Getting CMake variables for x64-windows
-- Getting CMake variables for x64-windows
-- Prerunning x64-windows-dbg
-- Building x64-windows-dbg
-- Restarting build without parallelism
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:134 (message):
    Command failed: "D:/Programs/Visual Studio/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/nmake.exe" /NOLOGO /G /U /F makefile install_dev install_modules INSTALL_PDBS=ON
    Working Directory: P:/Github/Discord_Bot/deps/vcpkg/buildtrees/openssl/x64-windows-dbg
    See logs for more information:
      P:\Github\Discord_Bot\deps\vcpkg\buildtrees\openssl\install-x64-windows-dbg-nmake-out.log
      P:\Github\Discord_Bot\deps\vcpkg\buildtrees\openssl\install-x64-windows-dbg-nmake-err.log

Call Stack (most recent call first):
  scripts/cmake/vcpkg_build_nmake.cmake:156 (vcpkg_execute_build_process)
  ports/openssl/windows/portfile.cmake:74 (vcpkg_build_nmake)
  ports/openssl/portfile.cmake:68 (include)
  scripts/ports.cmake:175 (include)
P:\Github\Discord_Bot\deps\vcpkg\buildtrees\openssl\install-x64-windows-dbg-nmake-err.log
cl : Command line warning D9025 : overriding '/Zi' with '/Z7'
NMAKE : fatal error U1077: '"D:\Programs\Visual Studio\VC\Tools\MSVC\14.39.33519\bin\Hostx64\x64\cl.exe"  /Zi /Fdossl_static.pdb /Gs0 /GF /Gy /MDd -nologo -DWIN32 -D_WINDOWS -W3 -utf-8 -MP  -D_DEBUG -MDd -Z7 -Ob0 -Od -RTC1 -I"crypto" -I"." -I"include" -I"providers\common\include" -I"providers\implementations\include" -D"L_ENDIAN" -D"OPENSSL_PIC" -D"OPENSSLDIR=\"P:\\Github\\Discord_Bot\\deps\\vcpkg\\packages\\openssl_x64-windows\\debug\"" -D"ENGINESDIR=\"P:\\Github\\Discord_Bot\\deps\\vcpkg\\packages\\openssl_x64-windows\\debug\\lib\\engines-3\"" -D"MODULESDIR=\"P:\\Github\\Discord_Bot\\deps\\vcpkg\\packages\\openssl_x64-windows\\debug\\bin\"" -D"OPENSSL_BUILDING_OPENSSL" -D"OPENSSL_SYS_WIN32" -D"WIN32_LEAN_AND_MEAN" -D"UNICODE" -D"_UNICODE" -D"_CRT_SECURE_NO_DEPRECATE" -D"_WINSOCK_DEPRECATED_NO_WARNINGS" -D"DEBUG" -D"_DEBUG"   -DAES_ASM -DBSAES_ASM -DCMLL_ASM -DECP_NISTZ256_ASM -DGHASH_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_BN_ASM_GF2m -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_USE_APPLINK -DPADLOCK_ASM -DPOLY1305_ASM -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DX25519_ASM -c /Focrypto\libcrypto-shlib-cversion.obj "crypto\cversion.c"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"D:\Programs\Visual Studio\VC\Tools\MSVC\14.39.33519\bin\Hostx64\x64\nmake.exe" /LU
        _build_libs' : return code '0x2'
Stop.
P:\Github\Discord_Bot\deps\vcpkg\buildtrees\openssl\install-x64-windows-dbg-nmake-out.log
    "D:\Programs\Visual Studio\VC\Tools\MSVC\14.39.33519\bin\Hostx64\x64\nmake.exe" /LU                 depend
    "D:\Programs\Visual Studio\VC\Tools\MSVC\14.39.33519\bin\Hostx64\x64\nmake.exe" /LU                 _build_libs
    "D:\Programs\Visual Studio\VC\Tools\MSVC\14.39.33519\bin\Hostx64\x64\cl.exe"  /Zi /Fdossl_static.pdb /Gs0 /GF /Gy /MDd -nologo -DWIN32 -D_WINDOWS -W3 -utf-8 -MP  -D_DEBUG -MDd -Z7 -Ob0 -Od -RTC1 -I"crypto" -I"." -I"include" -I"providers\common\include" -I"providers\implementations\include" -D"L_ENDIAN" -D"OPENSSL_PIC" -D"OPENSSLDIR=\"P:\\Github\\Discord_Bot\\deps\\vcpkg\\packages\\openssl_x64-windows\\debug\"" -D"ENGINESDIR=\"P:\\Github\\Discord_Bot\\deps\\vcpkg\\packages\\openssl_x64-windows\\debug\\lib\\engines-3\"" -D"MODULESDIR=\"P:\\Github\\Discord_Bot\\deps\\vcpkg\\packages\\openssl_x64-windows\\debug\\bin\"" -D"OPENSSL_BUILDING_OPENSSL" -D"OPENSSL_SYS_WIN32" -D"WIN32_LEAN_AND_MEAN" -D"UNICODE" -D"_UNICODE" -D"_CRT_SECURE_NO_DEPRECATE" -D"_WINSOCK_DEPRECATED_NO_WARNINGS" -D"DEBUG" -D"_DEBUG"   -DAES_ASM -DBSAES_ASM -DCMLL_ASM -DECP_NISTZ256_ASM -DGHASH_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_BN_ASM_GF2m -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_USE_APPLINK -DPADLOCK_ASM -DPOLY1305_ASM -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DX25519_ASM -c /Focrypto\libcrypto-shlib-cversion.obj "crypto\cversion.c"
cversion.c
crypto\cversion.c(60): warning C4129: 'V': unrecognized character escape sequence
crypto\cversion.c(60): warning C4129: 'T': unrecognized character escape sequence
crypto\cversion.c(60): warning C4129: 'M': unrecognized character escape sequence
crypto\cversion.c(60): warning C4129: 'H': unrecognized character escape sequence
crypto\cversion.c(60): warning C4129: 'c': unrecognized character escape sequence
crypto\cversion.c(60): error C2143: syntax error: missing ';' before 'constant'
crypto\cversion.c(60): error C2143: syntax error: missing ';' before 'string'
@Pospelove
Copy link
Contributor

Pospelove commented May 14, 2024

Same issue

This is the first commit that has this issue (discovered via git bisect)
e2f6384

See also
openssl/openssl@openssl-3.2.0...openssl-3.1.4

@dg0yt

@Pospelove
Copy link
Contributor

Pospelove commented May 14, 2024

We can further bisect inside openssl if that'd be helpful. what do you think @dg0yt ?

P.S. #37716 didn't fix that for me

@dg0yt
Copy link
Contributor

dg0yt commented May 15, 2024

Thank for working on this, I really can't do much more for a toolchain I don't use but which passes CI.

We can further bisect inside openssl if that'd be helpful. what do you think @dg0yt ?

P.S. #37716 didn't fix that for me

Given the changes in e2f6384, it is not clear whether the problem is from port changes or openssl changes.
The immediate quick fix is probably to pass the particular tool as pure file name, and to add its location to PATH, so that backslashes and spaces are taken out of the multi-interpreter control flow.
But any addition to PATH is a potential source for a new class of problems. I would prefer a fix which to the actual spot which breaks parsing the tool filepath.

@LilyWangLL LilyWangLL added the category:port-bug The issue is with a library, which is something the port should already support label May 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:port-bug The issue is with a library, which is something the port should already support
Projects
None yet
Development

No branches or pull requests

4 participants