Network library broken on Windows with GHC 6.12rc1

View: New views
10 Messages — Rating Filter:   Alert me  

Network library broken on Windows with GHC 6.12rc1

by Neil Mitchell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

The subject says it all really.

Using:
network-2.2.1.5 from Cabal
Windows XP, Admin mode
Cygwin 1.6
The Glorious Glasgow Haskell Compilation System, version 6.12.0.20091010

$ runhaskell Setup configure

Setup.hs:3:0:
Warning: In the use of `defaultUserHooks'
(imported from Distribution.Simple):
Deprecated: "Use simpleUserHooks or autoconfUserHooks, unless you n
eed 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...
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 preprocessor's result
configure: WARNING: winsock2.h: in the future, the compiler will take precedence

configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to libraries@... ##
configure: WARNING: ## ------------------------------------ ##
checking for winsock2.h... yes
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 preprocessor's result
configure: WARNING: ws2tcpip.h: in the future, the compiler will take precedence

configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to libraries@... ##
configure: WARNING: ## ------------------------------------ ##
checking for ws2tcpip.h... yes
checking wspiapi.h usability... no
checking wspiapi.h presence... no
checking for wspiapi.h... no
checking arpa/inet.h usability... no
checking arpa/inet.h presence... yes
configure: WARNING: arpa/inet.h: present but cannot be compiled
configure: WARNING: arpa/inet.h: check for missing prerequisite headers?
configure: WARNING: arpa/inet.h: see the Autoconf documentation
configure: WARNING: arpa/inet.h: section "Present But Cannot Be Compiled"
configure: WARNING: arpa/inet.h: proceeding with the preprocessor's result
configure: WARNING: arpa/inet.h: in the future, the compiler will take precedenc
e
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to libraries@... ##
configure: WARNING: ## ------------------------------------ ##
checking for arpa/inet.h... yes
checking netdb.h usability... no
checking netdb.h presence... yes
configure: WARNING: netdb.h: present but cannot be compiled
configure: WARNING: netdb.h: check for missing prerequisite headers?
configure: WARNING: netdb.h: see the Autoconf documentation
configure: WARNING: netdb.h: section "Present But Cannot Be Compiled"
configure: WARNING: netdb.h: proceeding with the preprocessor's result
configure: WARNING: netdb.h: in the future, the compiler will take precedence
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to libraries@... ##
configure: WARNING: ## ------------------------------------ ##
checking for netdb.h... yes
checking netinet/in.h usability... no
checking netinet/in.h presence... yes
configure: WARNING: netinet/in.h: present but cannot be compiled
configure: WARNING: netinet/in.h: check for missing prerequisite headers?
configure: WARNING: netinet/in.h: see the Autoconf documentation
configure: WARNING: netinet/in.h: section "Present But Cannot Be Compiled"
configure: WARNING: netinet/in.h: proceeding with the preprocessor's result
configure: WARNING: netinet/in.h: in the future, the compiler will take preceden
ce
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to libraries@... ##
configure: WARNING: ## ------------------------------------ ##
checking for netinet/in.h... yes
checking netinet/tcp.h usability... no
checking netinet/tcp.h presence... yes
configure: WARNING: netinet/tcp.h: present but cannot be compiled
configure: WARNING: netinet/tcp.h: check for missing prerequisite headers?
configure: WARNING: netinet/tcp.h: see the Autoconf documentation
configure: WARNING: netinet/tcp.h: section "Present But Cannot Be Compiled"
configure: WARNING: netinet/tcp.h: proceeding with the preprocessor's result
configure: WARNING: netinet/tcp.h: in the future, the compiler will take precede
nce
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to libraries@... ##
configure: WARNING: ## ------------------------------------ ##
checking for netinet/tcp.h... yes
checking sys/socket.h usability... no
checking sys/socket.h presence... yes
configure: WARNING: sys/socket.h: present but cannot be compiled
configure: WARNING: sys/socket.h: check for missing prerequisite headers?
configure: WARNING: sys/socket.h: see the Autoconf documentation
configure: WARNING: sys/socket.h: section "Present But Cannot Be Compiled"
configure: WARNING: sys/socket.h: proceeding with the preprocessor's result
configure: WARNING: sys/socket.h: in the future, the compiler will take preceden
ce
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to libraries@... ##
configure: WARNING: ## ------------------------------------ ##
checking for sys/socket.h... yes
checking sys/uio.h usability... no
checking sys/uio.h presence... yes
configure: WARNING: sys/uio.h: present but cannot be compiled
configure: WARNING: sys/uio.h: check for missing prerequisite headers?
configure: WARNING: sys/uio.h: see the Autoconf documentation
configure: WARNING: sys/uio.h: section "Present But Cannot Be Compiled"
configure: WARNING: sys/uio.h: proceeding with the preprocessor's result
configure: WARNING: sys/uio.h: in the future, the compiler will take precedence
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to libraries@... ##
configure: WARNING: ## ------------------------------------ ##
checking for sys/uio.h... yes
checking sys/un.h usability... no
checking sys/un.h presence... yes
configure: WARNING: sys/un.h: present but cannot be compiled
configure: WARNING: sys/un.h: check for missing prerequisite headers?
configure: WARNING: sys/un.h: see the Autoconf documentation
configure: WARNING: sys/un.h: section "Present But Cannot Be Compiled"
configure: WARNING: sys/un.h: proceeding with the preprocessor's result
configure: WARNING: sys/un.h: in the future, the compiler will take precedence
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to libraries@... ##
configure: WARNING: ## ------------------------------------ ##
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

$ runhaskell Setup build

Setup.hs:3:0:
Warning: In the use of `defaultUserHooks'
(imported from Distribution.Simple):
Deprecated: "Use simpleUserHooks or autoconfUserHooks, unless you n
eed Cabal-1.2
compatibility in which case you must stick with defaultUserHooks"
Preprocessing library network-2.2.1.5...
Network\Socket.hsc: In function `main':
Network\Socket.hsc:994: error: invalid application of `sizeof' to incomplete typ
e `ucred'
Network\Socket.hsc:994: error: invalid application of `sizeof' to incomplete typ
e `ucred'
Network\Socket.hsc:994: error: invalid application of `sizeof' to incomplete typ
e `ucred'
Network\Socket.hsc:999: error: `SO_PEERCRED' undeclared (first use in this funct
ion)
Network\Socket.hsc:999: error: (Each undeclared identifier is reported only once

Network\Socket.hsc:999: error: for each function it appears in.)
Network\Socket.hsc:1000: error: dereferencing pointer to incomplete type
Network\Socket.hsc:1001: error: dereferencing pointer to incomplete type
Network\Socket.hsc:1002: error: dereferencing pointer to incomplete type
compiling dist\build\Network\Socket_hsc_make.c failed
command was: C:\ghc\ghc-6.12.0.20091010\mingw\bin\gcc.exe -c -BC:\ghc\ghc-6.12.0
.20091010\gcc-lib -IC:\ghc\ghc-6.12.0.20091010\include\mingw -D__GLASGOW_HASKELL
__=612 -Iinclude -DCALLCONV=ccall -DBASE4 -IC:\ghc\ghc-6.12.0.20091010\base-4.2.
0.0\include -IC:\ghc\ghc-6.12.0.20091010/include -IC:\ghc\ghc-6.12.0.20091010/in
clude -IC:/ghc/ghc-6.12.0.20091010/lib/include/ dist\build\Network\Socket_hsc_ma
ke.c -o dist\build\Network\Socket_hsc_make.o

Thanks, Neil
_______________________________________________
Libraries mailing list
Libraries@...
http://www.haskell.org/mailman/listinfo/libraries

Re: Network library broken on Windows with GHC 6.12rc1

by Johan Tibell-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Neil,

Thanks for the bug report. Could you please cut-n-paste it into
http://trac.haskell.org/network/ so that it gets properly tracked? I
could do it myself but it makes things easier to track if the original
reporter (i.e. you) is also the reporter in trac.

I currently find myself without a working Windows setup. I'll try to
get Parallels working on OS X as soon as I get back from my trip but I
could really need some help debugging the issue. There are no recent
changes that touch the Windows side of things in 2.2.1.5 so I wonder
if the breakage isn't due to some change in GHC.

Thanks,

Johan
_______________________________________________
Libraries mailing list
Libraries@...
http://www.haskell.org/mailman/listinfo/libraries

Re: Re: Network library broken on Windows with GHC 6.12rc1

by Neil Mitchell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi

http://trac.haskell.org/network/ticket/20

Given that the Network library is so critical, and so environment/compiler dependent, it worries me that the maintainer doesn't have access to Windows and that there isn't a buildbot service running anywhere. Network is a very key Haskell library, and it being broken stops me from testing GHC :-(. I know it's heresy to suggest libraries get rebundled with GHC, but it would be great from my perspective!

Thanks

Neil

On 22 Oct 2009 15:07, Johan Tibell <johan.tibell@...> wrote:

> Hi Neil,
>
>
>
> Thanks for the bug report. Could you please cut-n-paste it into
>
> http://trac.haskell.org/network/ so that it gets properly tracked? I
>
> could do it myself but it makes things easier to track if the original
>
> reporter (i.e. you) is also the reporter in trac.
>
>
>
> I currently find myself without a working Windows setup. I'll try to
>
> get Parallels working on OS X as soon as I get back from my trip but I
>
> could really need some help debugging the issue. There are no recent
>
> changes that touch the Windows side of things in 2.2.1.5 so I wonder
>
> if the breakage isn't due to some change in GHC.
>
>
>
> Thanks,
>
>
>
> Johan
>
_______________________________________________
Libraries mailing list
Libraries@...
http://www.haskell.org/mailman/listinfo/libraries

RE: Re: Network library broken on Windows with GHC 6.12rc1

by Simon Peyton-Jones :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Some parts of this message have been removed. Learn more about Nabble's security policy.

This is exactly what the Haskell platform is for.

 

·         GHC HQ releases 6.12.  No ordinary user should use it yet!

·         Library authors test their libraries against 6.12 and hands them off to the Haskell Platform group

·         The Haskell Platform group tests all the libraries together, on all platforms, blesses them and releases HP

·         Then, and only then, do ordinary users download HP, and thereby get 6.12 + libraries, just as Neil wants

 

Presumably the HP release (currently scheduled for March 2010) will be held up until Network works on all platforms.

 

So, not heresy Neil.  The thing you want is the Haskell platform.

 

Simon

 

From: libraries-bounces@... [mailto:libraries-bounces@...] On Behalf Of ndmitchell@...
Sent: 22 October 2009 17:46
To: Johan Tibell; ndmitchell@...
Cc: Haskell-Libraries
Subject: Re: Re: Network library broken on Windows with GHC 6.12rc1

 

Hi

http://trac.haskell.org/network/ticket/20

Given that the Network library is so critical, and so environment/compiler dependent, it worries me that the maintainer doesn't have access to Windows and that there isn't a buildbot service running anywhere. Network is a very key Haskell library, and it being broken stops me from testing GHC :-(. I know it's heresy to suggest libraries get rebundled with GHC, but it would be great from my perspective!

Thanks

Neil


_______________________________________________
Libraries mailing list
Libraries@...
http://www.haskell.org/mailman/listinfo/libraries

Re: Re: Network library broken on Windows with GHC 6.12rc1

by Johan Tibell-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

Thanks for filing the bug report.

I did have a Windows setup but I haven't had time to set it all up
again on my new laptop (read: it's a pain). There is a buildbot
building the network package (I believe Ian added the repo to the list
of repos to build). However, it doesn't provide reports in any
convenient format so I have to remember to check it manually from time
to time.

Bryan has access to a Windows machine and has been doing most of the
Windows related changes.

Patches welcome.

-- Johan

P.S. The network package is a mess. Full of ifdefs, has no tests and
is prone to breakage. I've started looking into how it could be made
better but I don't have time for any major hacking at the moment.
_______________________________________________
Libraries mailing list
Libraries@...
http://www.haskell.org/mailman/listinfo/libraries

Re: Re: Network library broken on Windows with GHC 6.12rc1

by Ian Lynagh :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Thu, Oct 22, 2009 at 12:59:22PM -0400, Johan Tibell wrote:
>
> There is a buildbot
> building the network package (I believe Ian added the repo to the list
> of repos to build).

I don't know what you're thinking of, but I don't remember doing
anything like that.


Thanks
Ian

_______________________________________________
Libraries mailing list
Libraries@...
http://www.haskell.org/mailman/listinfo/libraries

Re[3]: Network library broken on Windows with GHC 6.12rc1

by Bulat Ziganshin-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello Johan,

Thursday, October 22, 2009, 8:59:22 PM, you wrote:
> I did have a Windows setup but I haven't had time to set it all up

except for licensing issues, it should be pretty easy to work with
windows installed anywhere in the world (if you have 1mbit connection).
so one possible solution is that someone provide you access to preinstalled
Windows VM

--
Best regards,
 Bulat                            mailto:Bulat.Ziganshin@...

_______________________________________________
Libraries mailing list
Libraries@...
http://www.haskell.org/mailman/listinfo/libraries

Re: Re: Network library broken on Windows with GHC 6.12rc1

by Don Stewart-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

ndmitchell:

> Hi
>
> http://trac.haskell.org/network/ticket/20
>
> Given that the Network library is so critical, and so environment/compiler
> dependent, it worries me that the maintainer doesn't have access to Windows and
> that there isn't a buildbot service running anywhere. Network is a very key
> Haskell library, and it being broken stops me from testing GHC :-(. I know it's
> heresy to suggest libraries get rebundled with GHC, but it would be great from
> my perspective!

The GHC team doesn't have the resources to test this stuff, however, if
you're volunteering a buildbot slave, that would be great.

Or perhaps this is a good task for the IHG to fund -- library dev machines.
_______________________________________________
Libraries mailing list
Libraries@...
http://www.haskell.org/mailman/listinfo/libraries

Re: Network library broken on Windows with GHC 6.12rc1

by Simon Marlow-7 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 22/10/2009 17:59, Johan Tibell wrote:

> Hi,
>
> Thanks for filing the bug report.
>
> I did have a Windows setup but I haven't had time to set it all up
> again on my new laptop (read: it's a pain). There is a buildbot
> building the network package (I believe Ian added the repo to the list
> of repos to build). However, it doesn't provide reports in any
> convenient format so I have to remember to check it manually from time
> to time.
>
> Bryan has access to a Windows machine and has been doing most of the
> Windows related changes.
>
> Patches welcome.
>
> -- Johan
>
> P.S. The network package is a mess. Full of ifdefs, has no tests and
> is prone to breakage. I've started looking into how it could be made
> better but I don't have time for any major hacking at the moment.

It does have tests, three to be precise, in the tests/ subdirectory.
They are set up to be used with the GHC test suite framework, but it
wouldn't be hard to adapt them to whatever framework you want to use.

Cheers,
        Simon


_______________________________________________
Libraries mailing list
Libraries@...
http://www.haskell.org/mailman/listinfo/libraries

Re: Network library broken on Windows with GHC 6.12rc1

by Johan Tibell-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Wed, Nov 4, 2009 at 4:28 PM, Simon Marlow <marlowsd@...> wrote:
> It does have tests, three to be precise, in the tests/ subdirectory. They
> are set up to be used with the GHC test suite framework, but it wouldn't be
> hard to adapt them to whatever framework you want to use.

They didn't work at the time I tried them but perhaps I was doing
things incorrectly. Regardless I need to write a proper testsuite.
network-bytestring already has pretty good coverage for the send/recv
type functions that I could reuse.

-- Johan
_______________________________________________
Libraries mailing list
Libraries@...
http://www.haskell.org/mailman/listinfo/libraries