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

Reply via email to