On Tue, Sep 7, 2010 at 8:00 PM, Xiaofan Chen <[email protected]> wrote:
> On Tue, Sep 7, 2010 at 10:36 AM, JonY <[email protected]> wrote:
>>
>> Ok, to clear everything up, for non-multilib 4.6, you should only have
>> "lib", "lib64" only if you have non-multilib 4.5.
>>
>
> It seems the latest automatic build version still has the same issue
> as previous versions, I just checked the following one. It has the same
> non-linked lib64 directory with a few files, same issue as the previous
> mingw-w64-1.0-bin_i686-mingw_20100702.zip and private build
> mingw-w64-bin_i686-mingw_20100711_sezero.zip.
>
> In this case, I will have issues to build libusb-1.0 Windows backend.
>
> The problem is that in this case, the generated libtool script seems to
> want to use lib64.
>
> # Compile-time system search path for libraries.
> sys_lib_search_path_spec="d:/work/mingw-w64/mingw-w64-1.0-bin_i686-mingw_20100906/lib/gcc/x86_64-w64-mingw32/4.5.2
> d:/work/mingw-w64/mingw-w64-1.0-bin_i686-mingw_20100906/lib/gcc
> d:/work/mingw-w64/mingw-w64-1.0-bin_i686-mingw_20100906/x86_64-w64-mingw32/lib64

On the other hand, TDM64 is fine. Now I remember the problem I had with
TDM is with building libwdi which is a special case (32bit/64bit mixed build).
Probably I need to change the build script. By default, it will build 32bit
targets but some of the files needs to be 64bit.
libwdi: http://www.libusb.org/wiki/libwdi

For libusb-1.0 Windows backend, TDM64 is fine out of the box, either native
build under Win7 x64, or cross-build under Win7 x86, without doing anything.

The generated libtool script is fine in this case. It will not look for lib64.
# Compile-time system search path for libraries.
sys_lib_search_path_spec="d:/tdm/mingw64/lib/gcc/x86_64-w64-mingw32/4.5.1
d:/tdm/mingw64/lib/gcc d:/tdm/mingw64/x86_64-w64-mingw32/lib
d:/tdm/mingw64/lib /mingw/lib "

mc...@mcuee-pc-win7 /d/work/libusb1/win/mingw64/libusb-pbatard
$ ./autogen.sh --host=x86_64-w64-mingw32
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'
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/install -c
checking whether build environment is sane... yes
checking for x86_64-w64-mingw32-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for x86_64-w64-mingw32-gcc... x86_64-w64-mingw32-gcc
checking for C compiler default output file name... a.exe
checking whether the C compiler works... yes
checking whether we are cross compiling... yes
checking for suffix of executables... .exe
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... i686-pc-mingw32
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... d:/tdm/mingw64/x86_64-w64-ming
w32/bin/ld.exe
checking if the linker (d:/tdm/mingw64/x86_64-w64-mingw32/bin/ld.exe) is GNU ld.
.. yes
checking for BSD- or MS-compatible name lister (nm)... no
checking for x86_64-w64-mingw32-dumpbin... no
checking for x86_64-w64-mingw32-link... no
checking for dumpbin... no
checking for link... no
checking the name lister (nm) interface... BSD nm
checking whether ln -s works... no, using cp -p
checking the maximum length of command line arguments... 8192
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert i686-pc-mingw32 paths to x86_64-w64-mingw32 format... fu
nc_msys_to_mingw_path_convert
checking for d:/tdm/mingw64/x86_64-w64-mingw32/bin/ld.exe option to reload objec
t files... -r
checking for x86_64-w64-mingw32-objdump... no
checking for objdump... objdump
configure: WARNING: using cross tools not prefixed with host triplet
checking how to recognize dependent libraries... file_magic ^x86 archive import|
^x86 DLL
checking for x86_64-w64-mingw32-dlltool... no
checking for dlltool... dlltool
checking how to associate runtime and link libraries... func_cygming_dll_for_imp
lib
checking for x86_64-w64-mingw32-ar... no
checking for ar... ar
checking for x86_64-w64-mingw32-strip... strip
checking for x86_64-w64-mingw32-ranlib... no
checking for ranlib... ranlib
checking command to parse nm output from x86_64-w64-mingw32-gcc object... ok
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 (d:/tdm/mingw64/x86_64-w64-mi
ngw32/bin/ld.exe) supports shared libraries... yes
checking whether -lc should be explicitly linked in... 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... yes
checking whether to build static libraries... yes
checking for inline... inline
checking whether x86_64-w64-mingw32-gcc and cc understand -c and -o together...
yes
checking whether to enable maintainer-specific portions of Makefiles... yes
checking operating system... Windows
checking for x86_64-w64-mingw32-windres... no
checking for windres... windres
checking for x86_64-w64-mingw32-dlltool... dlltool
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
configure: creating ./config.status
config.status: creating libusb-1.0.pc
config.status: creating Makefile
config.status: creating libusb/Makefile
config.status: creating libusb/libusb-1.0.rc
config.status: creating examples/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
rebuidling libusb-1.0.def file

mc...@mcuee-pc-win7 /d/work/libusb1/win/mingw64/libusb-pbatard
$ make
make  all-recursive
make[1]: Entering directory `/d/work/libusb1/win/mingw64/libusb-pbatard'
Making all in libusb
make[2]: Entering directory `/d/work/libusb1/win/mingw64/libusb-pbatard/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:1916:3: warning: suggest parentheses around '&&' within '||'
io.c: In function 'libusb_get_next_timeout':
io.c:2159: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
/bin/sh ../libtool   --mode=compile windres  -i libusb-1.0.rc -o libusb-1.0.lo
libtool: compile:  windres -i libusb-1.0.rc  -DDLL_EXPORT -DPIC -o .libs/libusb-
1.0.o
libtool: compile:  windres -i libusb-1.0.rc -o libusb-1.0.o >/dev/null 2>&1
  CC     libusb_1_0_la-threads_windows.lo
  CCLD   libusb-1.0.la
Creating library file: .libs/libusb-1.0.dll.a
dlltool  --kill-at --input-def libusb-1.0.def --dllname libusb-1.0.dll --output-
lib .libs/libusb-1.0.dll.a
make[2]: Leaving directory `/d/work/libusb1/win/mingw64/libusb-pbatard/libusb'
Making all in doc
make[2]: Entering directory `/d/work/libusb1/win/mingw64/libusb-pbatard/doc'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/d/work/libusb1/win/mingw64/libusb-pbatard/doc'
Making all in examples
make[2]: Entering directory `/d/work/libusb1/win/mingw64/libusb-pbatard/examples
'
  CC     xusb.o
  CCLD   xusb.exe
  CC     lsusb.o
  CCLD   lsusb.exe
make[2]: Leaving directory `/d/work/libusb1/win/mingw64/libusb-pbatard/examples'

make[2]: Entering directory `/d/work/libusb1/win/mingw64/libusb-pbatard'
make[2]: Nothing to be done for `all-am'.
make[2]: Leaving directory `/d/work/libusb1/win/mingw64/libusb-pbatard'
make[1]: Leaving directory `/d/work/libusb1/win/mingw64/libusb-pbatard'



-- 
Xiaofan

------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:

Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to