Windows build error

Issue #14 resolved
johnymoswag
created an issue

Hello,

While trying to install on windows I get an error about openssl/aes.h

Do you have any work arounds or a fix coming up?

Comments (5)

  1. Paul Moore

    Can you provide more details? I went to the openssl site and couldn't find a SDK, just a tarball of the sources (with no obvious instructions on where I would need to unpack them for scrypt to pick them up. Better still, could you distribute wheels for Windows, so that users can simply "pip install" the package?

  2. Paul Moore

    I installed an openssl binary distribution, but when I tried to build scrypt using it, I got the following errors:

      c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\amd64\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -DHAVE_CONFIG_H -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -Ic:\OpenSSL-Win32\include -IC:\Users\UK03306\Skydrive\Libraries\Include -IC:\Apps\Python34\include -IC:\Apps\Python34\include /Tcscrypt-1.1.6/lib/crypto/crypto_aesctr.c /Fobuild\temp.win-amd64-3.4\Release\scrypt-1.1.6/lib/crypto/crypto_aesctr.obj
    
      crypto_aesctr.c
    
      scrypt-1.1.6/lib/util\sysendian.h(48) : error C2054: expected '(' to follow 'inline'
    
      scrypt-1.1.6/lib/util\sysendian.h(49) : error C2085: 'be32dec' : not in formal parameter list
    
      scrypt-1.1.6/lib/util\sysendian.h(49) : error C2143: syntax error : missing ';' before '{'
    
      scrypt-1.1.6/lib/util\sysendian.h(57) : error C2054: expected '(' to follow 'inline'
    
      scrypt-1.1.6/lib/util\sysendian.h(58) : error C2085: 'be32enc' : not in formal parameter list
    
      scrypt-1.1.6/lib/util\sysendian.h(58) : error C2143: syntax error : missing ';' before '{'
    
      scrypt-1.1.6/lib/util\sysendian.h(68) : error C2054: expected '(' to follow 'inline'
    
      scrypt-1.1.6/lib/util\sysendian.h(69) : error C2085: 'be64dec' : not in formal parameter list
    
      scrypt-1.1.6/lib/util\sysendian.h(69) : error C2143: syntax error : missing ';' before '{'
    
      scrypt-1.1.6/lib/util\sysendian.h(79) : error C2054: expected '(' to follow 'inline'
    
      scrypt-1.1.6/lib/util\sysendian.h(80) : error C2085: 'be64enc' : not in formal parameter list
    
      scrypt-1.1.6/lib/util\sysendian.h(80) : error C2143: syntax error : missing ';' before '{'
    
      scrypt-1.1.6/lib/util\sysendian.h(94) : error C2054: expected '(' to follow 'inline'
    
      scrypt-1.1.6/lib/util\sysendian.h(95) : error C2085: 'le32dec' : not in formal parameter list
    
      scrypt-1.1.6/lib/util\sysendian.h(95) : error C2143: syntax error : missing ';' before '{'
    
      scrypt-1.1.6/lib/util\sysendian.h(103) : error C2054: expected '(' to follow 'inline'
    
      scrypt-1.1.6/lib/util\sysendian.h(104) : error C2085: 'le32enc' : not in formal parameter list
    
      scrypt-1.1.6/lib/util\sysendian.h(104) : error C2143: syntax error : missing ';' before '{'
    
      scrypt-1.1.6/lib/util\sysendian.h(114) : error C2054: expected '(' to follow 'inline'
    
      scrypt-1.1.6/lib/util\sysendian.h(115) : error C2085: 'le64dec' : not in formal parameter list
    
      scrypt-1.1.6/lib/util\sysendian.h(115) : error C2143: syntax error : missing ';' before '{'
    
      scrypt-1.1.6/lib/util\sysendian.h(125) : error C2054: expected '(' to follow 'inline'
    
      scrypt-1.1.6/lib/util\sysendian.h(126) : error C2085: 'le64enc' : not in formal parameter list
    
      scrypt-1.1.6/lib/util\sysendian.h(126) : error C2143: syntax error : missing ';' before '{'
    
      scrypt-1.1.6/lib/crypto/crypto_aesctr.c(95) : warning C4013: 'be64enc' undefined; assuming extern returning int
    
      error: command 'c:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\BIN\\amd64\\cl.exe' failed with exit status 2
    

    I'm guessing the "inline" keyword isn't supported by MSVC.

  3. Log in to comment