Cygwin woes

368 views
Skip to first unread message

Alex Ward

unread,
Nov 27, 2013, 5:02:23 PM11/27/13
to ruby...@googlegroups.com
This is a follow-up to the emails (now archived here - search for "cygwin troubles".

I too, have the same problem... can't build on Cygwin 64 (well, can't install the gem because the native ext won't build). 

Full output below:

make
Configuring libffi
make -C "/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"
make[1]: Entering directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin'
make "AR_FLAGS=" "CC_FOR_BUILD=" "CFLAGS=-Wall -fexceptions" "CXXFLAGS=" "CFLAGS_FOR_BUILD=" "CFLAGS_FOR_TARGET=" "INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644" "INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install -c" "JC1FLAGS=" "LDFLAGS=" "LIBCFLAGS=" "LIBCFLAGS_FOR_TARGET=" "MAKE=make" "MAKEINFO=/bin/sh /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/missing --run makeinfo " "PICFLAG=" "PICFLAG_FOR_TARGET=" "RUNTESTFLAGS=" "SHELL=/bin/sh" "exec_prefix=/usr/local" "infodir=/usr/local/share/info" "libdir=/usr/local/lib" "mandir=/usr/local/share/man" "prefix=/usr/local" "AR=ar" "AS=as" "CC=gcc" "CXX=g++" "LD=/usr/x86_64-pc-cygwin/bin/ld.exe" "NM=/usr/bin/nm -B" "RANLIB=ranlib" "DESTDIR=" all-recursive
make[2]: Entering directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin'
Making all in include
make[3]: Entering directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin/include'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin/include'
Making all in testsuite
make[3]: Entering directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin/testsuite'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin/testsuite'
Making all in man
make[3]: Entering directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin/man'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin/man'
make[3]: Entering directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin'
restore=: && backupdir=".am$$" && \
am__cwd=`pwd` && CDPATH="${ZSH_VERSION+.}:" && cd /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi && \
rm -rf $backupdir && mkdir $backupdir && \
if (/bin/sh /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/missing --run makeinfo   --version) >/dev/null 2>&1; then \
  for f in /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/doc/libffi.info /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/doc/libffi.info-[0-9] /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/doc/libffi.info-[0-9][0-9] /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/doc/libffi.i[0-9] /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/doc/libffi.i[0-9][0-9]; do \
    if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \
  done; \
else :; fi && \
cd "$am__cwd"; \
if /bin/sh /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/missing --run makeinfo     -I doc -I /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/doc \
 -o /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/doc/libffi.info /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/doc/libffi.texi; \
then \
  rc=0; \
  CDPATH="${ZSH_VERSION+.}:" && cd /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi; \
else \
  rc=$?; \
  CDPATH="${ZSH_VERSION+.}:" && cd /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi && \
  $restore $backupdir/* `echo ".//usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/doc/libffi.info" | sed 's|[^/]*$||'`; \
fi; \
rm -rf $backupdir; exit $rc
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/doc/libffi.texi:341: warning: missing name for @deftp
/bin/sh ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi  -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/debug.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/debug.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/debug.c  -DDLL_EXPORT -DPIC -o src/.libs/debug.o
/bin/sh ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi  -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/prep_cif.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/prep_cif.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/prep_cif.c  -DDLL_EXPORT -DPIC -o src/.libs/prep_cif.o
/bin/sh ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi  -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/types.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/types.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/types.c  -DDLL_EXPORT -DPIC -o src/.libs/types.o
/bin/sh ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi  -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/raw_api.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/raw_api.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/raw_api.c  -DDLL_EXPORT -DPIC -o src/.libs/raw_api.o
/bin/sh ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi  -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/java_raw_api.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/java_raw_api.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/java_raw_api.c  -DDLL_EXPORT -DPIC -o src/.libs/java_raw_api.o
/bin/sh ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi  -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/closures.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/closures.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/closures.c  -DDLL_EXPORT -DPIC -o src/.libs/closures.o
/bin/sh ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi  -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/x86/ffi.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/x86/ffi.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/x86/ffi.c  -DDLL_EXPORT -DPIC -o src/x86/.libs/ffi.o
/bin/sh ./libtool   --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi  -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src  -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src  -c -o src/x86/win64.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/x86/win64.S
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/x86/win64.S  -DDLL_EXPORT -DPIC -o src/x86/.libs/win64.o
/bin/sh ./libtool --tag=CC   --mode=link gcc -g  -Wall -fexceptions -version-info `grep -v '^#' /usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/libtool-version`    -o libffi.la -rpath /usr/local/lib src/debug.lo src/prep_cif.lo src/types.lo src/raw_api.lo src/java_raw_api.lo src/closures.lo     src/x86/ffi.lo src/x86/win64.lo
libtool: link: warning: undefined symbols not allowed in x86_64-unknown-cygwin shared libraries
libtool: link: ar cru .libs/libffi.a  src/.libs/debug.o src/.libs/prep_cif.o src/.libs/types.o src/.libs/raw_api.o src/.libs/java_raw_api.o src/.libs/closures.o src/x86/.libs/ffi.o src/x86/.libs/win64.o
libtool: link: ranlib .libs/libffi.a
libtool: link: ( cd ".libs" && rm -f "libffi.la" && ln -s "../libffi.la" "libffi.la" )
/bin/sh ./libtool --tag=CC   --mode=link gcc -g  -Wall -fexceptions   -o libffi_convenience.la  src/debug.lo src/prep_cif.lo src/types.lo src/raw_api.lo src/java_raw_api.lo src/closures.lo     src/x86/ffi.lo src/x86/win64.lo
libtool: link: rm -fr  .libs/libffi_convenience.a(D)
libtool: link: ar cru .libs/libffi_convenience.a src/.libs/debug.o src/.libs/prep_cif.o src/.libs/types.o src/.libs/raw_api.o src/.libs/java_raw_api.o src/.libs/closures.o src/x86/.libs/ffi.o src/x86/.libs/win64.o
libtool: link: ranlib .libs/libffi_convenience.a
libtool: link: ( cd ".libs" && rm -f "libffi_convenience.la" && ln -s "../libffi_convenience.la" "libffi_convenience.la" )
make[3]: Leaving directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin'
make[2]: Leaving directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin'
make[1]: Leaving directory '/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin'
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o AbstractMemory.o -c AbstractMemory.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o ArrayType.o -c ArrayType.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o Buffer.o -c Buffer.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o Call.o -c Call.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o ClosurePool.o -c ClosurePool.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o DataConverter.o -c DataConverter.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o DynamicLibrary.o -c DynamicLibrary.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o ffi.o -c ffi.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o Function.o -c Function.c
Function.c: In function ‘callback_invoke’:
Function.c:479:9: warning: passing argument 1 of ‘rb_thread_call_with_gvl’ from incompatible pointer type [enabled by default]
         rb_thread_call_with_gvl(callback_with_gvl, &cb);
         ^
Function.c:102:14: note: expected ‘void * (*)(void *)’ but argument is of type ‘VALUE (*)(void *)’
 extern void *rb_thread_call_with_gvl(void *(*func)(void *), void *data1);
              ^
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o FunctionInfo.o -c FunctionInfo.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o LastError.o -c LastError.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o LongDouble.o -c LongDouble.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o MappedType.o -c MappedType.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o MemoryPointer.o -c MemoryPointer.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o MethodHandle.o -c MethodHandle.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o Platform.o -c Platform.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o Pointer.o -c Pointer.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o Struct.o -c Struct.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o StructByReference.o -c StructByReference.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o StructByValue.o -c StructByValue.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o StructLayout.o -c StructLayout.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o Thread.o -c Thread.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o Type.o -c Type.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o Types.o -c Types.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing   -o Variadic.o -c Variadic.c
rm -f ffi_c.so
gcc -shared -o ffi_c.so AbstractMemory.o ArrayType.o Buffer.o Call.o ClosurePool.o DataConverter.o DynamicLibrary.o ffi.o Function.o FunctionInfo.o LastError.o LongDouble.o MappedType.o MemoryPointer.o MethodHandle.o Platform.o Pointer.o Struct.o StructByReference.o StructByValue.o StructLayout.o Thread.o Type.o Types.o Variadic.o -L. -L/usr/lib -L.  -Wl,--export-all-symbols -Wl,--enable-auto-image-base,--enable-auto-import    "/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin"/.libs/libffi_convenience.a -lruby191  -lpthread -lrt -ldl -lcrypt
Call.o: In function `call_blocking_function':
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/Call.c:294: undefined reference to `ffi_call'
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/Call.c:294:(.text+0x94): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `ffi_call'
Call.o: In function `rbffi_CallFunction':
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/Call.c:378: undefined reference to `ffi_call'
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/Call.c:378:(.text+0xa29): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `ffi_call'
Variadic.o: In function `variadic_invoke':
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/Variadic.c:252: undefined reference to `ffi_call'
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/Variadic.c:252:(.text+0x36d): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `ffi_call'
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin/.libs/libffi_convenience.a(prep_cif.o): In function `ffi_prep_cif':
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/prep_cif.c:162: undefined reference to `ffi_prep_cif_machdep'
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/prep_cif.c:162:(.text+0x272): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `ffi_prep_cif_machdep'
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-cygwin/.libs/libffi_convenience.a(prep_cif.o): In function `ffi_prep_closure':
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/prep_cif.c:174: undefined reference to `ffi_prep_closure_loc'
/usr/lib/ruby/gems/1.9.1/gems/ffi-1.9.3/ext/ffi_c/libffi/src/prep_cif.c:174:(.text+0x2b7): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `ffi_prep_closure_loc'
collect2: error: ld returned 1 exit status
Makefile:214: recipe for target 'ffi_c.so' failed
make: *** [ffi_c.so] Error 1

Daniel Berger

unread,
Nov 29, 2013, 9:55:26 AM11/29/13
to ruby...@googlegroups.com


On Wednesday, November 27, 2013 3:02:23 PM UTC-7, Alex Ward wrote:
This is a follow-up to the emails (now archived here - search for "cygwin troubles".

I too, have the same problem... can't build on Cygwin 64 (well, can't install the gem because the native ext won't build). 

<snip>

Just checking, you're using a 64-bit Devkit, right? If you try using a 32-bit Devkit, it will fail. I was able to build and install it without issue using the correct Devkit.

BTW, what version of Ruby and Windows?

Regards,

Dan 

kamran....@arkhitech.com

unread,
Dec 5, 2013, 1:55:20 AM12/5/13
to ruby...@googlegroups.com
I'm having the same problem on cygwin 64. Have tried various work-around with no luck. Ruby version is 1.9.3, and Windows 7.

Bob Myers

unread,
Dec 7, 2013, 1:08:07 AM12/7/13
to ruby...@googlegroups.com
Sorry for the stupid question, but what do you mean by "devkit"?
Reply all
Reply to author
Forward
0 new messages