On Tue, Apr 16, 2013 at 12:29 AM, Daniel Goertzen <daniel.goert...@gmail.com> wrote: > Hello, I am struggling with libusbx on cygwin under Windows 8. When I > "configure" and "V=1 make" I get the failed build output below. It looks > like a pthread linkage issue and I normally know how to deal with that, but > not when it is buried under automake and libtool. Any tips? > > details: > - libusbx-1.0.15-rc3 > - Windows 8 (64 bit) > - cygwin updated today (15 April 2013) > - I am making a USB device from a LPC11u24 and want to talk to it via > libusbx. > > Thanks, > Dan. > > ... > /bin/sh ../libtool --tag=CC --mode=link gcc -std=gnu99 -Wall -Wundef > -Wunused -Wstrict-prototypes -Werror-implicit-function-declaration > -Wno-pointer-sign -Wshadow -g -O2 -version-info 1:0:1 -no-undefined > -avoid-version -Wl,--add-stdcall-alias -o libusb-1.0.la -rpath > /usr/local/lib libusb_1_0_la-core.lo libusb_1_0_la-descriptor.lo > libusb_1_0_la-io.lo libusb_1_0_la-sync.lo libusb_1_0_la-poll_windows.lo > libusb_1_0_la-windows_usb.lo libusb-1.0.lo libusb_1_0_la-threads_posix.lo > libtool: link: gcc -shared .libs/libusb_1_0_la-core.o > .libs/libusb_1_0_la-descriptor.o .libs/libusb_1_0_la-io.o > .libs/libusb_1_0_la-sync.o .libs/libusb_1_0_la-poll_windows.o > .libs/libusb_1_0_la-windows_usb.o .libs/libusb-1.0.o > .libs/libusb_1_0_la-threads_posix.o -O2 -Wl,--add-stdcall-alias -o > .libs/cygusb-1.0.dll -Wl,--enable-auto-image-base -Xlinker --out-implib > -Xlinker .libs/libusb-1.0.dll.a > Creating library file: .libs/libusb-1.0.dll.a.libs/libusb_1_0_la-core.o: In > function `usbi_alloc_device': > C:\cygwin\home\goertzen\libusbx-1.0.15-rc3\libusb/core.c:513: undefined > reference to `_imp__pthread_mutex_init' > C:\cygwin\home\goertzen\libusbx-1.0.15-rc3\libusb/core.c:525: undefined > reference to `_imp__pthread_mutex_lock' > C:\cygwin\home\goertzen\libusbx-1.0.15-rc3\libusb/core.c:527: undefined > reference to `_imp__pthread_mutex_unlock' > .libs/libusb_1_0_la-core.o: In function `usbi_get_device_by_session_id':
It seems to me that you are trying to use Cygwin's MinGW cross compiler to build MinGW binary (without dependency on cygwin1.dll, output dll is named libusb-1.0.dll). In that case, did you specify the cross compiler properly? Cygwin has cross compiler based on MinGW.org (32bit only) and MinGW-w64(32/64bit). The MinGW.org one has suffix i686-pc-mingw32. The MinGW-w64 32bit compiler has suffix i686-w64-mingw32 and 64bit compiler has suffix x86_64-w64-mingw32. What Pete has done is to build the native Cygwin binary (with dependency on cygwin1.dll, output dll is named cygusb-1.0.dll). That is quite different from what you are doing. -- Xiaofan ------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ libusbx-devel mailing list libusbx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libusbx-devel