It fails with the following:

C:\hwloc-asdf>make
Making all in src
make[1]: Entering directory `/cygdrive/c/hwloc-asdf/src'
  CC     topology.lo
  CC     traversal.lo
  CC     distances.lo
  CC     topology-synthetic.lo
  CC     topology-xml.lo
  CC     bind.lo
  CC     cpuset.lo
  CC     misc.lo
  CC     topology-windows.lo
topology-windows.c: In function 'hwloc_win_get_VirtualAllocExNumaProc':
topology-windows.c:323:30: warning: assignment from incompatible pointer type [e
nabled by default]
topology-windows.c:328:28: warning: assignment from incompatible pointer type [e
nabled by default]
topology-windows.c: In function 'hwloc_look_windows':
topology-windows.c:469:36: warning: assignment from incompatible pointer type [e
nabled by default]
topology-windows.c:470:38: warning: assignment from incompatible pointer type [e
nabled by default]
  CCLD   libhwloc.la

*** Warning: linker path does not have real file for library -lgdi32.
*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have
*** because I did check the linker path looking for a file starting
*** with libgdi32 and none of the candidates passed a file format test
*** using a file magic. Last file checked: /usr/lib/w32api/libgdi32.a
*** The inter-library dependencies that have been dropped here will be
*** automatically added whenever a program is linked with this library
*** or is declared to -dlopen it.

*** Since this library must not contain undefined symbols,
*** because either the platform does not support them or
*** it was explicitly requested with -no-undefined,
*** libtool will only create a static version of it.
copying selected object files to avoid basename conflicts...
gcc -I/cygdrive/c/hwloc-asdf/include -I/cygdrive/c/hwloc-asdf/include -I/cygdriv
e/c/hwloc-asdf/include    dolib.c   -o dolib
./dolib "/cygdrive/c/Program Files (x86)/Microsoft Visual Studio 10.0/VC/bin/lib
" X86 .libs/libhwloc.def libhwloc- .libs/libhwloc.lib
The system cannot find the path specified.
"/cygdrive/c/Program Files (x86)/Microsoft Visual Studio 10.0/VC/bin/lib" /machi
ne:X86 /def:.libs/libhwloc.def /name:libhwloc- /out:.libs/libhwloc.lib failed
Makefile:758: recipe for target `.libs/libhwloc.lib' failed
make[1]: *** [.libs/libhwloc.lib] Error 1
make[1]: Leaving directory `/cygdrive/c/hwloc-asdf/src'
Makefile:450: recipe for target `all-recursive' failed
make: *** [all-recursive] Error 1

Andrew

> -----Original Message-----
> From: hwloc-users-boun...@open-mpi.org [mailto:hwloc-users-
> boun...@open-mpi.org] On Behalf Of Samuel Thibault
> Sent: Thursday, January 12, 2012 4:38 PM
> To: Hardware locality user list
> Subject: Re: [hwloc-users] Compiling hwloc into a static library on
> Windows and Linux
> 
> Andrew Helwer, le Fri 13 Jan 2012 00:11:45 +0100, a écrit :
> > > In mingw terms, .lib is meant for dynamic linking, not static
> linking.
> > > the .a file is meant for static linking.
> >
> > How can I get it to create a static windows lib?
> 
> Passing --enable-static to ./configure should do it.
> 
> Samuel
> _______________________________________________
> hwloc-users mailing list
> hwloc-us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-users

Reply via email to