> From: openssl-users [mailto:[email protected]] On Behalf Of
> Ranier Vilela
> Sent: Wednesday, February 05, 2020 15:41
>
> Hi,
> Trying to compile openssl with msvc 2019. The following error is occurring:
>
> Microsoft (R) Program Maintenance Utility Versão 14.24.28315.0
> Direitos autorais da Microsoft Corporation. Todos os direitos reservados.
>         cl  /Zi /Fdossl_static.pdb /Gs0 /GF /Gy /MD /W3 /wd4090 /nologo /O2
> /WX /I "." /I "crypto\include" /I "include" -D"L_ENDIAN" -D"OPENSSL_PIC" -
> D"OPENSSLDIR=\"C:\\Program Files (x86)\\Common Files\\SSL\"" -
> D"ENGINESDIR=\"C:\\Program Files (x86)\\OpenSSL\\lib\\engines-1_1\"" -
> D"OPENSSL_SYS_WIN32" -D"WIN32_LEAN_AND_MEAN" -D"UNICODE" -D"_UNICODE" -
> D"_CRT_SECURE_NO_DEPRECATE" -D"_WINSOCK_DEPRECATED_NO_WARNINGS" -
> D"OPENSSL_USE_APPLINK" -D"NDEBUG"  -c /Focrypto\evp\cmeth_lib.obj
> "crypto\evp\cmeth_lib.c"
> cmeth_lib.c
> crypto\evp\cmeth_lib.c(1): error C2220: o aviso a seguir é tratado como um
> erro

I assume this is "warnings are treated as errors".

> crypto\evp\cmeth_lib.c(1): warning C4821: Não é possível determinar tipo de
> codificação Unicode, salve o arquivo com assinatura (BOM)

MSVC appears to think cmeth_lib.c is Unicode rather than ASCII.

(Yes, ASCII is a proper subset of UTF-8 and UTF-7. I mean MSVC appears to be 
complaining that it wants to see a UTF-16 BOM at the beginning of the file.)

> crypto\evp\cmeth_lib.c(1): warning C4335: formato de arquivo Mac detectado:
> converta o arquivo fonte para formato DOS ou UNIX

And it seems to think that the lines in the file end with a bare CR, rather 
than a Windows CRLF or a UNIX LF.

> crypto\evp\cmeth_lib.c(1): error C2018: caractere desconhecido '0x2'
> crypto\evp\cmeth_lib.c(1): error C2018: caractere desconhecido '0x1'
> crypto\evp\cmeth_lib.c(1): error C2018: caractere desconhecido '0x7'
> crypto\evp\cmeth_lib.c(1): error C2018: caractere desconhecido '0x5'

And it seems to be finding a bunch of invalid code points.

I suspect the source file is corrupt. Have you looked at it? Did you check the 
signature on the OpenSSL tarball?

It's also possible that MSVC assumes UTF-16 source files under some conditions, 
possibly based on the Windows language settings. If that's the case, there 
ought to be some way to turn that off. Alternatively, you could transcode all 
the files from ASCII to UTF-16; that ought to be simple to script.

Or I could be way off and the problem is something else entirely.

--
Michael Wojcik
Distinguished Engineer, Micro Focus



Reply via email to