Building luvit 0.6 on Windows

250 views
Skip to first unread message

Ross Bencina

unread,
Jan 27, 2013, 8:16:40 AM1/27/13
to lu...@googlegroups.com
Hi Guys,

What's the current status of Luvit on Windows? Is anyone maintaining it?

The 0.6 tarball is not building for me. I've included the build output below (python 2.7.2, MSVC2010SP1).

Thanks,

Ross


c:\luvit_build\luvit-0.6.0>python --version
Python 2.7.2

c:\luvit_build\luvit-0.6.0>python configure
configure options: {'debug': None, 'without_ssl': None, 'prefix': '/usr/local', 'arch': None, 'skinny': None}
creating  options.gypi
Generating build system with GYP...
['-f', 'msvs', '-G', 'msvs_version=2010', '.\\all.gyp', '-I', '.\\common.gypi', '-I', '.\\options.gypi', '--depth=.', '-Gmsvs_version=2010', '-Dcomponent=static
_library', '-Dlibrary=static_library']
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/MultiProcessorCompilation while converting to MSBuild.
Warning: unrecognized setting VCCLCompilerTool/TargetMachine while converting to MSBuild.
Warning: Missing input files:
out\Debug\luvit

Done!

Now run `python build.py` to build!


c:\luvit_build\luvit-0.6.0>python build.py
python: can't open file 'build.py': [Errno 2] No such file or directory

c:\luvit_build\luvit-0.6.0>

Brandon Philips

unread,
Jan 27, 2013, 3:54:47 PM1/27/13
to lu...@googlegroups.com
Have you tried from building from git? It is possible that the tarball
is simply broken.

rjemanuele submitted a bunch of fixes and I know he has it working on Windows.

Hope that helps,

Ross Bencina

unread,
Jan 28, 2013, 12:28:45 AM1/28/13
to lu...@googlegroups.com
Thanks for the quick response Brandon.

> Have you tried from building from git? 

I had not, but I have now. I get the same error, see below.

I had to ask on IRC and google around to find info about how to do the gyp build on Windows. If I understand correctly, the correct commands are (assuming that git and python are installed):

> git clone https://github.com/luvit/luvit.git --recursive
> cd luvit
> python configure
> python build.py

Please let me know whether this is correct. If it's correct maybe this should be on your home page?

Attempt #1

Following the git clone instructions from http://luvit.io/ gives the following error. Apparently --recursive is needed. You may want to fix this on your website.

c:\luvit_build>git clone https://github.com/luvit/luvit.git
Cloning into 'luvit'...
remote: Counting objects: 8213, done.
remote: Compressing objects: 100% (2767/2767), done.
remote: Total 8213 (delta 5174), reused 8048 (delta 5040)
Receiving objects: 100% (8213/8213), 2.68 MiB | 413 KiB/s, done.
Resolving deltas: 100% (5174/5174), done.

c:\luvit_build>cd luvit

c:\luvit_build\luvit>python configure
configure options: {'debug': None, 'without_ssl': None, 'prefix': '/usr/local', 'arch': None, 'skinny': None}

Error: Unsupported target architecture: win-ia32

Could not find configuration for openssl in one of:
  deps/openssl/openssl-configs/win-ia32
  deps/openssl/openssl-configs/ia32
  deps/openssl/openssl-configs/win


Attempt #2

Retrying git clone with --recursive results in the same error that I reported from trying to build the tarball.

c:\luvit_build>ls

c:\luvit_build> git clone https://github.com/luvit/luvit.git --recursive
Cloning into 'luvit'...
remote: Counting objects: 8213, done.
remote: Compressing objects: 100% (2767/2767), done.
remote: Total 8213 (delta 5174), reused 8048 (delta 5040)
Receiving objects: 100% (8213/8213), 2.68 MiB | 582 KiB/s, done.
Resolving deltas: 100% (5174/5174), done.
Submodule 'deps/http-parser' (https://github.com/joyent/http-parser.git) registered for path 'deps/http-parser'
Submodule 'deps/luacrypto' (https://github.com/luvit/luacrypto) registered for path 'deps/luacrypto'
Submodule 'deps/luajit' (https://github.com/luvit/luajit-2.0.git) registered for path 'deps/luajit'
Submodule 'deps/openssl' (https://github.com/luvit/openssl.git) registered for path 'deps/openssl'
Submodule 'deps/uv' (https://github.com/joyent/libuv.git) registered for path 'deps/uv'
Submodule 'deps/yajl' (https://github.com/lloyd/yajl.git) registered for path 'deps/yajl'
Submodule 'deps/zlib' (https://github.com/luvit/zlib.git) registered for path 'deps/zlib'
Submodule 'tools/gyp' (https://github.com/luvit/gyp.git) registered for path 'tools/gyp'
Cloning into 'deps/http-parser'...
remote: Counting objects: 1140, done.
remote: Compressing objects: 100% (471/471), done.

Receiving objects: 100% (1140/1140), 271.99 KiB | 147 KiB/s, done.
Resolving deltas: 100% (764/764), done.
Submodule path 'deps/http-parser': checked out 'fe9fb34e538f9c51b6f0aec4e73bb2318d6827cf'
Cloning into 'deps/luacrypto'...
remote: Counting objects: 278, done.
remote: Compressing objects: 100% (144/144), done.
remote: Total 278 (delta 135), reused 259 (delta 126)
Receiving objects: 100% (278/278), 91.57 KiB | 78 KiB/s, done.
Resolving deltas: 100% (135/135), done.
Submodule path 'deps/luacrypto': checked out 'ef3ef66552c6ec641badcd3aa39700db95745018'
Cloning into 'deps/luajit'...
remote: Counting objects: 8476, done.
remote: Compressing objects: 100% (1655/1655), done.
remote: Total 8476 (delta 6816), reused 8476 (delta 6816)
Receiving objects: 100% (8476/8476), 2.66 MiB | 370 KiB/s, done.
Resolving deltas: 100% (6816/6816), done.
Submodule path 'deps/luajit': checked out '87d74a8f3d8f5a53fc7ad1fd45adcc06db4bcde8'
Cloning into 'deps/openssl'...
remote: Counting objects: 2368, done.
remote: Compressing objects: 100% (1603/1603), done.
remote: Total 2368 (delta 624), reused 2365 (delta 621)
Receiving objects: 100% (2368/2368), 4.66 MiB | 543 KiB/s, done.
Resolving deltas: 100% (624/624), done.
Submodule path 'deps/openssl': checked out '5e9b32e8c505ac145b2a734584263df65fe105cd'
Cloning into 'deps/uv'...
remote: Counting objects: 14675, done.
remote: Compressing objects: 100% (3796/3796), done.
remote: Total 14675 (delta 11539), reused 13830 (delta 10825)
Receiving objects: 100% (14675/14675), 3.85 MiB | 514 KiB/s, done.
Resolving deltas: 100% (11539/11539), done.
Submodule path 'deps/uv': checked out '49977386e93dcdf7c0f0044a491c98d551f61db4'
Cloning into 'deps/yajl'...
remote: Counting objects: 1991, done.
remote: Compressing objects: 100% (672/672), done.
remote: Total 1991 (delta 1355), reused 1871 (delta 1248)Receiving objects:  93% (1852/1991), 492.00 KiB | 233 KiB/s
Receiving objects: 100% (1991/1991), 578.81 KiB | 233 KiB/s, done.
Resolving deltas: 100% (1355/1355), done.
Submodule path 'deps/yajl': checked out '8b48967c74e9b16c07f120b71598f5e5269e8f57'
Cloning into 'deps/zlib'...
remote: Counting objects: 310, done.
remote: Compressing objects: 100% (241/241), done.
remote: Total 310 (delta 65), reused 308 (delta 63)
Receiving objects: 100% (310/310), 693.33 KiB | 206 KiB/s, done.
Resolving deltas: 100% (65/65), done.
Submodule path 'deps/zlib': checked out '89c3db5f341a1875c08ff18b8a70a8b17623345c'
Cloning into 'tools/gyp'...
remote: Counting objects: 10954, done.
remote: Compressing objects: 100% (2291/2291), done.
remote: Total 10954 (delta 7468), reused 10951 (delta 7465)
Receiving objects: 100% (10954/10954), 7.12 MiB | 515 KiB/s, done.
Resolving deltas: 100% (7468/7468), done.
Submodule path 'tools/gyp': checked out '66665cc0f78933a7a118603928be059fed23f673'

c:\luvit_build>cd luvit

c:\luvit_build\luvit>ls
ChangeLog            bin                  jit
LICENSE.txt          cgi_parity.markdown  lib
Makefile             common.gypi          luvit.gyp
NOTICE.txt           configure            src
README.markdown      deps                 tests
TODO                 errors.markdown      tools
all.gyp              examples
api.markdown         include

c:\luvit_build\luvit>python configure
c:\luvit_build\luvit>python build.py
python: can't open file 'build.py': [Errno 2] No such file or directory



I then tried to run the gyp install and configure process manually as suggested here;
That didn't help. Same errors.

Thanks,

Ross

Ross Bencina

unread,
Jan 28, 2013, 1:23:47 AM1/28/13
to lu...@googlegroups.com
Ahem,

Attempt #2a

Although "python configure.py" reports "Now run `python build.py` to build!" it seems that the appropriate command might be:

> python tools/build.py build

Something is now building here.

I will post again if it completes correctly.

Ross Bencina

unread,
Jan 28, 2013, 2:07:18 AM1/28/13
to lu...@googlegroups.com
I now have the git version building on Windows.

I have provided updated instructions as part of a new issue requesting that the Windows build instructions be documented::


I have also filed issues against the errors in the existing documentation:

Please consider fixing these.

There are two remaining problems:

The tarball gives linker errors on Windows. I think you need to update the tarball or put a big note that it doesn't work on Windows.

I still don't know how to make 64-bit builds on Windows or how to make Release builds. Can someone advise please?

Thanks,

Ross

Ross Bencina

unread,
Jan 28, 2013, 2:28:58 AM1/28/13
to lu...@googlegroups.com
I've been able to make a 32 bit Release build from within Visual Studio

I can run the tests manually with:
> cd tests
> ..\Release\luvit.exe runner.lua

If you'd like me to make a prebuilt binary zip file for your website just let me know what script to run to build the archive.

By the way these tests are failing with both Debug and Release builds:
test-tls-session-cache.lua FAILED
test-tls-set-ciphers.lua FAILED
Reply all
Reply to author
Forward
0 new messages