Network on GHC 6.12 with Windows

Neil Mitchell ndmitchell at gmail.com
Tue Nov 24 10:40:08 EST 2009


Hi Johan,

I get a different behaviour, but it's not all good. I seem to fail
during the configure stage now - complete output below.

Thanks, Neil

$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 6.12.0.20091121

$ darcs get http://code.haskell.org/network
Copying patch 329 of 329... done.
Applying patch 329 of 329... done.
Finished getting.

$ cd network

$ wget http://johantibell.com/gamr7networkpatch.dpatch
--2009-11-24 15:32:54--  http://johantibell.com/gamr7networkpatch.dpatch
Length: 3178 (3.1K) [application/octet-stream]
Saving to: `gamr7networkpatch.dpatch'

100%[======================================>] 3,178       --.-K/s   in 0.002s

2009-11-24 15:32:54 (1.60 MB/s) - `gamr7networkpatch.dpatch' saved [3178/3178]

$ darcs apply gamr7networkpatch.dpatch
Finished applying...

$ autoreconf

$ runhaskell Setup configure

Setup.hs:3:0:
    Warning: In the use of `defaultUserHooks'
             (imported from Distribution.Simple):
             Deprecated: "Use simpleUserHooks or autoconfUserHooks,
unless you need Cabal-1.2
             compatibility in which case you must stick with defaultUserHooks"
Warning: defaultUserHooks in Setup script is deprecated.
Configuring network-2.2.1.5...
configure: WARNING: unrecognized options: --with-hc
checking build system type... i686-pc-cygwin
checking host system type... i686-pc-cygwin
checking for gcc... gcc
checking for C compiler default output file name... a.exe
checking whether the C compiler works... yes
checking whether we are cross compiling... no
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 gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for an ANSI C-conforming const... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -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 fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking for stdlib.h... (cached) yes
checking for sys/types.h... (cached) yes
checking for unistd.h... (cached) yes
checking winsock2.h usability... no
checking winsock2.h presence... yes
configure: WARNING: winsock2.h: present but cannot be compiled
configure: WARNING: winsock2.h:     check for missing prerequisite headers?
configure: WARNING: winsock2.h: see the Autoconf documentation
configure: WARNING: winsock2.h:     section "Present But Cannot Be Compiled"
configure: WARNING: winsock2.h: proceeding with the compiler's result
configure: WARNING:     ## ------------------------------------ ##
configure: WARNING:     ## Report this to libraries at haskell.org ##
configure: WARNING:     ## ------------------------------------ ##
checking for winsock2.h... no
checking ws2tcpip.h usability... no
checking ws2tcpip.h presence... yes
configure: WARNING: ws2tcpip.h: present but cannot be compiled
configure: WARNING: ws2tcpip.h:     check for missing prerequisite headers?
configure: WARNING: ws2tcpip.h: see the Autoconf documentation
configure: WARNING: ws2tcpip.h:     section "Present But Cannot Be Compiled"
configure: WARNING: ws2tcpip.h: proceeding with the compiler's result
configure: WARNING:     ## ------------------------------------ ##
configure: WARNING:     ## Report this to libraries at haskell.org ##
configure: WARNING:     ## ------------------------------------ ##
checking for ws2tcpip.h... no
checking wspiapi.h usability... no
checking wspiapi.h presence... no
checking for wspiapi.h... no
checking arpa/inet.h usability... yes
checking arpa/inet.h presence... yes
checking for arpa/inet.h... yes
checking netdb.h usability... yes
checking netdb.h presence... yes
checking for netdb.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking netinet/tcp.h usability... yes
checking netinet/tcp.h presence... yes
checking for netinet/tcp.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/uio.h usability... yes
checking sys/uio.h presence... yes
checking for sys/uio.h... yes
checking sys/un.h usability... yes
checking sys/un.h presence... yes
checking for sys/un.h... yes
checking for readlink... yes
checking for symlink... yes
checking for struct msghdr.msg_control... yes
checking for struct msghdr.msg_accrights... no
checking for struct sockaddr.sa_len... no
checking for in_addr_t in netinet/in.h... yes
checking for SO_PEERCRED and struct ucred in sys/socket.h... yes
checking for _head_libws2_32_a in -lws2_32... yes
checking for getaddrinfo... no
checking for getaddrinfo if WINVER is 0x0501... no
checking for gai_strerror... no
checking whether AI_ADDRCONFIG is declared... no
checking whether AI_ALL is declared... no
checking whether AI_NUMERICSERV is declared... no
checking whether AI_V4MAPPED is declared... no
checking for sendfile in sys/sendfile.h... no
checking for sendfile in sys/socket.h... no
checking for gethostent... no
configure: creating ./config.status
config.status: creating network.buildinfo
config.status: creating include/HsNetworkConfig.h
configure: WARNING: unrecognized options: --with-hc
Setup: Missing dependency on a foreign library:
* Missing header file: HsNet.h
This problem can usually be solved by installing the system package that
provides this library (you may need the "-dev" version). If the library is
already installed but in a non-standard location then you can use the flags
--extra-include-dirs= and --extra-lib-dirs= to specify where it is.

$ runhaskell Setup build

Setup.hs:3:0:
    Warning: In the use of `defaultUserHooks'
             (imported from Distribution.Simple):
             Deprecated: "Use simpleUserHooks or autoconfUserHooks,
unless you need Cabal-1.2
             compatibility in which case you must stick with defaultUserHooks"
Preprocessing library network-2.2.1.5...
In file included from Network\BSD.hsc:17:
include/HsNet.h:78:22: sys/uio.h: No such file or directory
include/HsNet.h:81:25: sys/socket.h: No such file or directory
include/HsNet.h:84:26: netinet/tcp.h: No such file or directory
include/HsNet.h:87:25: netinet/in.h: No such file or directory
include/HsNet.h:90:21: sys/un.h: No such file or directory
include/HsNet.h:93:24: arpa/inet.h: No such file or directory
include/HsNet.h:96:19: netdb.h: No such file or directory
In file included from Network\BSD.hsc:17:
include/HsNet.h:138: error: syntax error before "addr"
include/HsNet.h: In function `my_inet_ntoa':
include/HsNet.h:146: error: storage size of 'a' isn't known
include/HsNet.h:147: error: `addr' undeclared (first use in this function)
include/HsNet.h:147: error: (Each undeclared identifier is reported only once
include/HsNet.h:147: error: for each function it appears in.)
include/HsNet.h:148: warning: return makes pointer from integer without a cast
Network\BSD.hsc: In function `main':
Network\BSD.hsc:149: error: invalid application of `sizeof' to
incomplete type `servent'
Network\BSD.hsc:149: error: invalid application of `sizeof' to
incomplete type `servent'
Network\BSD.hsc:149: error: invalid application of `sizeof' to
incomplete type `servent'
Network\BSD.hsc:153: error: dereferencing pointer to incomplete type
Network\BSD.hsc:154: error: dereferencing pointer to incomplete type
Network\BSD.hsc:157: error: dereferencing pointer to incomplete type
Network\BSD.hsc:158: error: dereferencing pointer to incomplete type
Network\BSD.hsc:253: error: invalid application of `sizeof' to
incomplete type `protoent'
Network\BSD.hsc:253: error: invalid application of `sizeof' to
incomplete type `protoent'
Network\BSD.hsc:253: error: invalid application of `sizeof' to
incomplete type `protoent'
Network\BSD.hsc:257: error: dereferencing pointer to incomplete type
Network\BSD.hsc:258: error: dereferencing pointer to incomplete type
Network\BSD.hsc:265: error: dereferencing pointer to incomplete type
Network\BSD.hsc:343: error: invalid application of `sizeof' to
incomplete type `hostent'
Network\BSD.hsc:343: error: invalid application of `sizeof' to
incomplete type `hostent'
Network\BSD.hsc:343: error: invalid application of `sizeof' to
incomplete type `hostent'
Network\BSD.hsc:347: error: dereferencing pointer to incomplete type
Network\BSD.hsc:348: error: dereferencing pointer to incomplete type
Network\BSD.hsc:351: error: dereferencing pointer to incomplete type
Network\BSD.hsc:353: error: dereferencing pointer to incomplete type
Network\BSD.hsc:452: error: invalid application of `sizeof' to
incomplete type `hostent'
Network\BSD.hsc:452: error: invalid application of `sizeof' to
incomplete type `hostent'
Network\BSD.hsc:452: error: invalid application of `sizeof' to
incomplete type `hostent'
Network\BSD.hsc:456: error: dereferencing pointer to incomplete type
Network\BSD.hsc:457: error: dereferencing pointer to incomplete type
Network\BSD.hsc:460: error: dereferencing pointer to incomplete type
Network\BSD.hsc:461: error: dereferencing pointer to incomplete type
compiling dist\build\Network\BSD_hsc_make.c failed
command was: C:\ghc\ghc-6.12.1-rc2\mingw\bin\gcc.exe -c
-D__GLASGOW_HASKELL__=612 -Iinclude -DCALLCONV=ccall -DBASE4
-IC:\ghc\ghc-6.12.1-rc2\base-4.2.0.0\include
-IC:\ghc\ghc-6.12.1-rc2/include -IC:\ghc\ghc-6.12.1-rc2/include
-IC:/ghc/ghc-6.12.1-rc2/lib/include/ dist\build\Network\BSD_hsc_make.c
-o dist\build\Network\BSD_hsc_make.o


More information about the Libraries mailing list