
Felipe Lessa wrote:
Hello!
I take it that the problem is that libcurl is a C library with a Unix-like build system, and that is the problem that needs Cygwin, right?
No. It's completely possible to download a pre-built binary for libcurl (or just about any other OSS library, for that matter). The problem is that the Haskell "curl" package expects to just run autoconf and this will actually work. Naturally, on Windows it just complains that no such command exists and dies. (Actually, cabal-install is smart enough to detect this situation and exit gracefully, explaining what the problem is in a sane mannar. It still won't build it though.) Similar problems with Haskell packages that expect to be able to use Make, Bash scripts, run Awk and so forth. These tools do not exist on Windows. (Unless you install MSYS / MinGW.)
I'm not a Windows expert, but having C code is perfectly fine, I guess. My 'hipmunk' library includes a whole C library. When I tried to 'cabal install' it on Windows, it worked flawlessly even if I never really did develop it for Windows.
Oh, if you just want to install a library which _includes_ C code, that's usually fine. The problem is if you want to access an external C library. Cabal can't find the header files, can't run autoconf, and general chaos ensues.
Given that the problem is building libcurl, and not the Haskell curl package, won't a binary distribution of libcurl cut it?
Like I say, that part isn't the problem.