Error building Zbatery on Windows

Gavin Kistner gkistner at nvidia.com
Wed Sep 7 15:02:32 EDT 2011


Microsoft Windows [Version 5.2.3790]
(C) Copyright 1985-2003 Microsoft Corp.

c:\ >ruby -v
ruby 1.9.2p180 (2011-02-18) [i386-mingw32]

c:\ >gem -v
1.5.2

c:\ >gem install zbatery
Fetching: kgio-2.6.0.gem (100%)
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
ERROR:  Error installing zbatery:
        ERROR: Failed to build gem native extension.

        C:/Ruby192/bin/ruby.exe extconf.rb
checking for CLOCK_MONOTONIC in time.h... no
checking for CLOCK_MONOTONIC() in time.h... no
checking for clockid_t in time.h... no
checking for clock_gettime() in -lrt... no
checking for t_open() in -lnsl... no
checking for socket() in -lsocket... no
checking for poll() in poll.h... no
checking for getaddrinfo() in sys/types.h,sys/socket.h,netdb.h... no
getaddrinfo required
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=C:/Ruby192/bin/ruby
        --with-rtlib
        --without-rtlib
        --with-nsllib
        --without-nsllib
        --with-socketlib
        --without-socketlib


Gem files will remain installed in C:/Ruby192/lib/ruby/gems/1.9.1/gems/kgio-2.6.0 for inspection.
Results logged to C:/Ruby192/lib/ruby/gems/1.9.1/gems/kgio-2.6.0/ext/kgio/gem_make.out


c:\ >type \Ruby192\lib\ruby\gems\1.9.1\gems\kgio-2.6.0\ext\kgio\mkmf.log
have_macro: checking for CLOCK_MONOTONIC in time.h... -------------------- no

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static  -lshell32 -lws2_32  "
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: int main() {return 0;}
/* end */

"gcc -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -IC:/Ruby192/i
nclude/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra -Wno-unused
-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-long-long   -
c conftest.c"
conftest.c:8:3: error: #error
conftest.c:9:1: error: expected identifier or '(' before '>>' token
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: #include <time.h>
6: /*top*/
7: #ifndef CLOCK_MONOTONIC
8: # error
9: >>>>>> CLOCK_MONOTONIC undefined <<<<<<
10: #endif
/* end */

--------------------

have_func: checking for CLOCK_MONOTONIC() in time.h... -------------------- no

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static  -lshell32 -lws2_32  "
conftest.c: In function 't':
conftest.c:9:53: error: 'CLOCK_MONOTONIC' undeclared (first use in this function)
conftest.c:9:53: note: each undeclared identifier is reported only once for each function it appears in
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: #include <time.h>
6:
7: /*top*/
8: int main() {return 0;}
9: int t() { void ((*volatile p)()); p = (void ((*)()))CLOCK_MONOTONIC; return 0; }
/* end */

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static  -lshell32 -lws2_32  "
C:\DOCUME~1\gkistner\LOCALS~1\Temp\1\cccXN0I7.o: In function `t':
C:\Ruby192\lib\ruby\gems\1.9.1\gems\kgio-2.6.0\ext\kgio/conftest.c:9: undefined reference to `CLOCK_MONOTONIC'

collect2: ld returned 1 exit status
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: #include <time.h>
6:
7: /*top*/
8: int main() {return 0;}
9: int t() { CLOCK_MONOTONIC(); return 0; }
/* end */

--------------------

have_type: checking for clockid_t in time.h... -------------------- no

"gcc -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -IC:/Ruby192/i
nclude/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra -Wno-unused
-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-long-long   -
c conftest.c"
conftest.c:8:19: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'conftest_type'
conftest.c:9:24: error: 'conftest_type' undeclared here (not in a function)
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: #include <time.h>
6:
7: /*top*/
8: typedef clockid_t conftest_type;
9: int conftestval[sizeof(conftest_type)?1:-1];
/* end */

--------------------

have_library: checking for clock_gettime() in -lrt... -------------------- no

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static -lrt  -lshell32 -lws2_32  "
conftest.c: In function 't':
conftest.c:9:53: error: 'clock_gettime' undeclared (first use in this function)
conftest.c:9:53: note: each undeclared identifier is reported only once for each function it appears in
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: #include <time.h>
6:
7: /*top*/
8: int main() {return 0;}
9: int t() { void ((*volatile p)()); p = (void ((*)()))clock_gettime; return 0; }
/* end */

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static -lrt  -lshell32 -lws2_32  "
c:/rubydev/mingw/bin/../lib/gcc/mingw32/4.5.1/../../../../mingw32/bin/ld.exe: cannot find -lrt
collect2: ld returned 1 exit status
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: #include <time.h>
6:
7: /*top*/
8: int main() {return 0;}
9: int t() { clock_gettime(); return 0; }
/* end */

--------------------

have_library: checking for t_open() in -lnsl... -------------------- no

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static -lnsl  -lshell32 -lws2_32  "
conftest.c: In function 't':
conftest.c:8:53: error: 't_open' undeclared (first use in this function)
conftest.c:8:53: note: each undeclared identifier is reported only once for each function it appears in
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5:
6: /*top*/
7: int main() {return 0;}
8: int t() { void ((*volatile p)()); p = (void ((*)()))t_open; return 0; }
/* end */

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static -lnsl  -lshell32 -lws2_32  "
c:/rubydev/mingw/bin/../lib/gcc/mingw32/4.5.1/../../../../mingw32/bin/ld.exe: cannot find -lnsl
collect2: ld returned 1 exit status
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5:
6: /*top*/
7: int main() {return 0;}
8: int t() { t_open(); return 0; }
/* end */

--------------------

have_library: checking for socket() in -lsocket... -------------------- no

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static -lsocket  -lshell32 -lws2_32  "
c:/rubydev/mingw/bin/../lib/gcc/mingw32/4.5.1/../../../../mingw32/bin/ld.exe: cannot find -lsocket
collect2: ld returned 1 exit status
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5:
6: /*top*/
7: int main() {return 0;}
8: int t() { void ((*volatile p)()); p = (void ((*)()))socket; return 0; }
/* end */

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static -lsocket  -lshell32 -lws2_32  "
conftest.c: In function 't':
conftest.c:8:1: error: too few arguments to function 'socket'
c:\rubydev\mingw\bin\../lib/gcc/mingw32/4.5.1/../../../../include/winsock2.h:553:35: note: declared here
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5:
6: /*top*/
7: int main() {return 0;}
8: int t() { socket(); return 0; }
/* end */

--------------------

have_func: checking for poll() in poll.h... -------------------- no

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static  -lshell32 -lws2_32  "
conftest.c:5:18: fatal error: poll.h: No such file or directory
compilation terminated.
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: #include <poll.h>
6:
7: /*top*/
8: int main() {return 0;}
9: int t() { void ((*volatile p)()); p = (void ((*)()))poll; return 0; }
/* end */

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static  -lshell32 -lws2_32  "
conftest.c:5:18: fatal error: poll.h: No such file or directory
compilation terminated.
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: #include <poll.h>
6:
7: /*top*/
8: int main() {return 0;}
9: int t() { poll(); return 0; }
/* end */

--------------------

have_func: checking for getaddrinfo() in sys/types.h,sys/socket.h,netdb.h... -------------------- no

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static  -lshell32 -lws2_32  "
conftest.c:6:24: fatal error: sys/socket.h: No such file or directory
compilation terminated.
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: #include <sys/types.h>
6: #include <sys/socket.h>
7: #include <netdb.h>
8:
9: /*top*/
10: int main() {return 0;}
11: int t() { void ((*volatile p)()); p = (void ((*)()))getaddrinfo; return 0; }
/* end */

"gcc -o conftest -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -IC:/Ruby192/include/ruby-1.9.1/ruby/backward -I
C:/Ruby192/include/ruby-1.9.1 -I.    -D_GNU_SOURCE -DPOSIX_C_SOURCE=1-D_POSIX_C_SOURCE=200112L  -O3 -g -Wextra
-Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-l
ong-long conftest.c  -L. -LC:/Ruby192/lib -L.      -lmsvcrt-ruby191-static  -lshell32 -lws2_32  "
conftest.c:6:24: fatal error: sys/socket.h: No such file or directory
compilation terminated.
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: #include <sys/types.h>
6: #include <sys/socket.h>
7: #include <netdb.h>
8:
9: /*top*/
10: int main() {return 0;}
11: int t() { getaddrinfo(); return 0; }
/* end */

--------------------


-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may contain
confidential information.  Any unauthorized review, use, disclosure or distribution
is prohibited.  If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------


More information about the rainbows-talk mailing list