From: Wilson Bilkovich Date: 2006-02-03T05:12:10+09:00 Subject: Re: [ANN] Mongrel HTTP Library 0.2.0 (Fast And RubyForgified) I know Windows is evil, but I thought I'd paste in my log again, just in case it becomes handy. Ruby OneClick 1.8.2-15 install, Visual Studio 2K3 Unpack tar.gz, run 'vsvars32' to set up the Visual C++ environment. I then modified the extconf.rb file to look for "libc.lib", instead of "c.lib", since this looked like the Visual Studio equivalent, and added a dir_config to let it find ruby.h and whatnot. Without that it doesn't link the library in during the mkmf step, or find the headers during compilation. (Just in case it sounds like I'm decent at compiling C extensions, don't be deceived. I actually suck at it.) E:\Temp\mongrel-0.2.1>rake compile (in E:/Temp/mongrel-0.2.1) c:/ruby/bin/ruby extconf.rb --with-ruby-include=e:/projects/ruby_src/ruby --with-ruby-lib=e:/projects/ruby_src/ruby/lib checking for main() in libc.lib... yes creating Makefile make Microsoft (R) Program Maintenance Utility Version 7.10.3077 Copyright (C) Microsoft Corporation. All rights reserved. cl -nologo -MD -Zi -O2b2xg- -G6 -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32 -Ic:/ruby/lib/ruby/1.8/i386-mswin32 -I. -Ie:/projects/ruby_src/ruby -I. -I./.. -I./../missing -c -Tchttp11_parser.c http11_parser.c e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(6) : error C2146: syntax error : missing ')' before identifier 'length' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(6) : error C2144: syntax error : '' should be preceded by '' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(6) : error C2144: syntax error : '' should be preceded by '' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(6) : error C2143: syntax error : missing ')' before 'identifier' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(6) : error C2081: 'size_t' : na me in formal parameter list illegal e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(6) : error C2061: syntax error : identifier 'length' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(6) : error C2059: syntax error : ';' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(6) : error C2059: syntax error : ')' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(7) : error C2146: syntax error : missing ')' before identifier 'flen' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(7) : error C2144: syntax error : '' should be preceded by '' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(7) : error C2144: syntax error : '' should be preceded by '' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(7) : error C2143: syntax error : missing ')' before 'identifier' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(7) : error C2081: 'size_t' : na me in formal parameter list illegal e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(7) : error C2061: syntax error : identifier 'flen' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(7) : error C2059: syntax error : ';' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(7) : error C2059: syntax error : ',' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(7) : error C2059: syntax error : ')' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(13) : error C2061: syntax error : identifier 'size_t' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(16) : error C2061: syntax error : identifier 'field_len' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(16) : error C2059: syntax error : ';' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(20) : error C2061: syntax error : identifier 'http_field' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(20) : error C2059: syntax error : ';' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(21) : error C2061: syntax error : identifier 'request_method' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(21) : error C2059: syntax error : ';' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(22) : error C2061: syntax error : identifier 'path_info' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(22) : error C2059: syntax error : ';' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(23) : error C2061: syntax error : identifier 'query_string' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(23) : error C2059: syntax error : ';' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(24) : error C2061: syntax error : identifier 'http_version' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(24) : error C2059: syntax error : ';' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(26) : error C2059: syntax error : '}' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(28) : error C2143: syntax error : missing ')' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(28) : error C2143: syntax error : missing '{' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(28) : error C2059: syntax error : ')' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(29) : error C2143: syntax error : missing ')' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(29) : error C2143: syntax error : missing '{' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(29) : error C2059: syntax error : ')' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(30) : error C2061: syntax error : identifier 'http_parser_execute' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(30) : error C2059: syntax error : ';' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(30) : error C2143: syntax error : missing ')' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(30) : error C2143: syntax error : missing '{' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(30) : error C2059: syntax error : 'type' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(30) : error C2059: syntax error : ')' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(31) : error C2143: syntax error : missing ')' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(31) : error C2143: syntax error : missing '{' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(31) : error C2059: syntax error : ')' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(32) : error C2143: syntax error : missing ')' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(32) : error C2143: syntax error : missing '{' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(32) : error C2059: syntax error : ')' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(33) : error C2143: syntax error : missing ')' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(33) : error C2143: syntax error : missing '{' before '*' e:\Temp\mongrel-0.2.1\ext\http11\http11_parser.h(33) : error C2059: syntax error : ')' ext/http11/http11_parser.rl(105) : error C2143: syntax error : missing ')' befor e '*' ext/http11/http11_parser.rl(105) : error C2143: syntax error : missing '{' befor e '*' ext/http11/http11_parser.rl(105) : error C2059: syntax error : ')' ext/http11/http11_parser.rl(105) : error C2054: expected '(' to follow 'parser' ext/http11/http11_parser.rl(108) : error C2005: #line expected a line number, fo und 'string' ext/http11/http11_parser.rl(112) : error C2005: #line expected a line number, fo und 'string' ext/http11/http11_parser.rl(124) : error C2143: syntax error : missing ')' befor e '*' ext/http11/http11_parser.rl(124) : error C2143: syntax error : missing '{' befor e '*' ext/http11/http11_parser.rl(124) : error C2059: syntax error : 'type' ext/http11/http11_parser.rl(124) : error C2059: syntax error : ')' ext/http11/http11_parser.rl(139) : error C2143: syntax error : missing ')' befor e '*' ext/http11/http11_parser.rl(139) : error C2143: syntax error : missing '{' befor e '*' ext/http11/http11_parser.rl(139) : error C2059: syntax error : ')' ext/http11/http11_parser.rl(140) : error C2054: expected '(' to follow 'parser' ext/http11/http11_parser.rl(144) : error C2005: #line expected a line number, fo und 'string' ext/http11/http11_parser.rl(145) : error C2005: #line expected a line number, fo und 'string' ext/http11/http11_parser.rl(158) : error C2143: syntax error : missing ')' befor e '*' ext/http11/http11_parser.rl(158) : error C2143: syntax error : missing '{' befor e '*' ext/http11/http11_parser.rl(158) : error C2059: syntax error : ')' ext/http11/http11_parser.rl(158) : error C2054: expected '(' to follow 'parser' ext/http11/http11_parser.rl(162) : error C2143: syntax error : missing ')' befor e '*' ext/http11/http11_parser.rl(162) : error C2143: syntax error : missing '{' befor e '*' ext/http11/http11_parser.rl(162) : error C2059: syntax error : ')' ext/http11/http11_parser.rl(162) : error C2054: expected '(' to follow 'parser' NMAKE : fatal error U1077: 'cl' : return code '0x2' Stop. rake aborted! Command failed with status (2): [make] (See full trace by running task with --trace)