Well, I'm not seeing the issue with cross compilation and --disable-shared any longer (Issue #83) Just cross compiled as static, picked up the resulting xusb, and found it got compiled alright and works just fine on Windows.
Not sure what happened, but I don't think I want to spend too much time on an issue that seems to have fixed itself. Xiaofan, if you have a cross compiler available, could you run a test against the latest git to confirm that you see the same thing? If you do, then please feel free to close the issue. Regards, /Pete PS: underquoted definition of AM_PATH_IMLIB is an aclocal issue on some Linux distros, and not something we can fix on our end. Likewise the "suggest parentheses around '&&' within '||'" warning is an old MinGW issue that has been fixed in latest toolchains (haven't recompiled MinGW for some time on this platform). ------------------------------------------------------------------------ root@sheeva:/usr/src/libusbx# ./autogen.sh --host=x86_64-w64-mingw32 --disable-shared libtoolize: putting auxiliary files in `.'. libtoolize: copying file `./ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'. libtoolize: copying file `m4/libtool.m4' libtoolize: copying file `m4/ltoptions.m4' libtoolize: copying file `m4/ltsugar.m4' libtoolize: copying file `m4/ltversion.m4' libtoolize: copying file `m4/lt~obsolete.m4' /usr/share/aclocal/imlib.m4:9: warning: underquoted definition of AM_PATH_IMLIB /usr/share/aclocal/imlib.m4:9: run info '(automake)Extending aclocal' /usr/share/aclocal/imlib.m4:9: or see http://sources.redhat.com/automake/automake.html#Extending-aclocal configure.ac:42: installing `./compile' configure.ac:39: installing `./config.guess' configure.ac:39: installing `./config.sub' configure.ac:29: installing `./install-sh' configure.ac:29: installing `./missing' examples/Makefile.am: installing `./depcomp' configure: WARNING: if you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used checking for a BSD-compatible install... /bin/ginstall -c checking whether build environment is sane... yes checking for x86_64-w64-mingw32-strip... x86_64-w64-mingw32-strip checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether to enable maintainer-specific portions of Makefiles... yes checking for x86_64-w64-mingw32-gcc... x86_64-w64-mingw32-gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.exe checking for suffix of executables... .exe checking whether we are cross compiling... yes checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether x86_64-w64-mingw32-gcc accepts -g... yes checking for x86_64-w64-mingw32-gcc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of x86_64-w64-mingw32-gcc... gcc3 checking build system type... armv5tel-unknown-linux-gnueabi checking host system type... x86_64-w64-mingw32 checking how to print strings... printf checking for a sed that does not truncate output... /bin/sed checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for fgrep... /bin/grep -F checking for ld used by x86_64-w64-mingw32-gcc... /usr/local/x86_64-w64-mingw32/bin/ld checking if the linker (/usr/local/x86_64-w64-mingw32/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/local/bin/x86_64-w64-mingw32-nm -B checking the name lister (/usr/local/bin/x86_64-w64-mingw32-nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking how to convert armv5tel-unknown-linux-gnueabi file names to x86_64-w64-mingw32 format... func_convert_file_nix_to_w32 checking how to convert armv5tel-unknown-linux-gnueabi file names to toolchain format... func_convert_file_noop checking for /usr/local/x86_64-w64-mingw32/bin/ld option to reload object files... -r checking for x86_64-w64-mingw32-objdump... x86_64-w64-mingw32-objdump checking how to recognize dependent libraries... file_magic ^x86 archive import|^x86 DLL checking for x86_64-w64-mingw32-dlltool... x86_64-w64-mingw32-dlltool checking how to associate runtime and link libraries... func_cygming_dll_for_implib checking for x86_64-w64-mingw32-ar... x86_64-w64-mingw32-ar checking for archiver @FILE support... @ checking for x86_64-w64-mingw32-strip... (cached) x86_64-w64-mingw32-strip checking for x86_64-w64-mingw32-ranlib... x86_64-w64-mingw32-ranlib checking command to parse /usr/local/bin/x86_64-w64-mingw32-nm -B output from x86_64-w64-mingw32-gcc object... ok checking for sysroot... no checking for x86_64-w64-mingw32-mt... no checking for mt... mt configure: WARNING: using cross tools not prefixed with host triplet checking if mt is a manifest tool... no checking how to run the C preprocessor... x86_64-w64-mingw32-gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking if x86_64-w64-mingw32-gcc supports -fno-rtti -fno-exceptions... no checking for x86_64-w64-mingw32-gcc option to produce PIC... -DDLL_EXPORT -DPIC checking if x86_64-w64-mingw32-gcc PIC flag -DDLL_EXPORT -DPIC works... yes checking if x86_64-w64-mingw32-gcc static flag -static works... yes checking if x86_64-w64-mingw32-gcc supports -c -o file.o... yes checking if x86_64-w64-mingw32-gcc supports -c -o file.o... (cached) yes checking whether the x86_64-w64-mingw32-gcc linker (/usr/local/x86_64-w64-mingw32/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... Win32 ld.exe checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... no checking whether to build static libraries... yes checking for x86_64-w64-mingw32-windres... x86_64-w64-mingw32-windres checking for inline... inline checking whether x86_64-w64-mingw32-gcc and cc understand -c and -o together... yes checking operating system... Windows checking sys/timerfd.h usability... no checking sys/timerfd.h presence... no checking for sys/timerfd.h... no checking whether TFD_NONBLOCK is declared... no checking whether to use timerfd for timing... no (header not available) checking for struct timespec... yes checking for sigaction... no checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking for gettimeofday... yes checking signal.h usability... yes checking signal.h presence... yes checking for signal.h... yes configure: creating ./config.status config.status: creating libusb-1.0.pc config.status: creating Makefile config.status: creating libusb/Makefile config.status: creating examples/Makefile config.status: creating tests/Makefile config.status: creating doc/Makefile config.status: creating doc/doxygen.cfg config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands root@sheeva:/usr/src/libusbx# make make all-recursive make[1]: Entering directory `/usr/src/libusbx' Making all in libusb make[2]: Entering directory `/usr/src/libusbx/libusb' CC libusb_1_0_la-core.lo CC libusb_1_0_la-descriptor.lo CC libusb_1_0_la-io.lo io.c: In function 'get_next_timeout': io.c:1967:3: warning: suggest parentheses around '&&' within '||' io.c: In function 'libusb_get_next_timeout': io.c:2272:2: warning: suggest parentheses around '&&' within '||' CC libusb_1_0_la-sync.lo CC libusb_1_0_la-poll_windows.lo CC libusb_1_0_la-windows_usb.lo os/windows_usb.c: In function 'winusbx_claim_interface': os/windows_usb.c:2676:11: warning: 'dev_info' may be used uninitialized in this function GEN libusb-1.0.lo CC libusb_1_0_la-threads_windows.lo CCLD libusb-1.0.la GEN libusb-1.0.dll make[2]: Leaving directory `/usr/src/libusbx/libusb' Making all in doc make[2]: Entering directory `/usr/src/libusbx/doc' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/usr/src/libusbx/doc' Making all in examples make[2]: Entering directory `/usr/src/libusbx/examples' CC listdevs.o CCLD listdevs.exe CC xusb.o CCLD xusb.exe CC fxload-ezusb.o CC fxload-fxload.o CCLD fxload.exe make[2]: Leaving directory `/usr/src/libusbx/examples' Making all in tests make[2]: Entering directory `/usr/src/libusbx/tests' CC stress.o CC testlib.o CCLD stress.exe make[2]: Leaving directory `/usr/src/libusbx/tests' make[2]: Entering directory `/usr/src/libusbx' make[2]: Leaving directory `/usr/src/libusbx' make[1]: Leaving directory `/usr/src/libusbx' ------------------------------------------------------------------------------ Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the endpoint security space. For insight on selecting the right partner to tackle endpoint security challenges, access the full report. http://p.sf.net/sfu/symantec-dev2dev _______________________________________________ libusbx-devel mailing list libusbx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libusbx-devel