Roderick, thanks for passing this along. To be honest, I haven't tried to build this on Windows yet. I have an old PC that I keep meaning to get things going on. If you're able to get things working, I'd be more than happy to integrate any changes that you want to send along... patches are very much appreciated! :)
thanks!
chris
On Mar 18, 2010, at 1:46 PM, Roderick Ford wrote:
> Hello,
> In order to build (cabal install HDBC-mysql) the HDBC-mysql package, I am having to make the following changes:
>> (1) I had to change the mysql (5.1.45 community distrib msi) to use a wrapper exe on the mysql_config.pl and put this in c:\program files\mysql\bin since although the c:\program files\mysql\scripts\, where mysql_config.pl resides, was in the path, even the commandline call to it was not finding or using it...very strange. This of course doesn't directly have to do with the HDBC-mysql package.
> --The quick wrapper was:
> import System.Environment(getArgs)
> import System.Process(readProcessWithExitCode)
> import System.Exit(exitWith,ExitCode(ExitSuccess))
> main = do
> args <- getArgs
> (ecode,out,err) <- readProcessWithExitCode "c:\\Perl64\\bin\\perl.exe" ("C:\\Program Files\\MySQL\\scripts\\mysql_config.pl" : args) ""
> if ecode == ExitSuccess
> then mapM_ putStrLn (lines out)
> else mapM_ putStrLn (lines err)
> exitWith ecode
>> -- so now the output is:
> "C:\Program Files\MySQL\lib\mysqlclient.lib" "wsock32.lib" "advapi32.lib" "user3
> 2.lib"
>>> (2) Once that was done, the "cabal install HDBC-mysql" call was able to find the mysql_config. However, it was splitting the values returned by mysql_config on space, and thus failed to find mysql.h, as the resulting command was:
>> C:\Program Files (x86)\Haskell Platform\2009.2.0.2\gcc.exe -c -BC:\
> Program Files (x86)\Haskell Platform\2009.2.0.2\gcc-lib -IC:\Program Files (x86)
> \Haskell Platform\2009.2.0.2\include\mingw -D__GLASGOW_HASKELL__=610 -IIC:\Program -Iles\MySQL\include\mysql" ...
>> -- then I tried taking the -I out of the mysql_config.pl script and got the following from the "cabal install HDBC-mysql"
> command was: C:\Program Files (x86)\Haskell Platform\2009.2.0.2\gcc.exe -c -BC:\
> Program Files (x86)\Haskell Platform\2009.2.0.2\gcc-lib -IC:\Program Files (x86)
> \Haskell Platform\2009.2.0.2\include\mingw -D__GLASGOW_HASKELL__=610 -I:\Program -Iles\MySQL\include\mysql" ... blah blah blah
> cabal: Error: some packages failed to install:
> HDBC-mysql-0.6.1 failed during the building phase. The exception was:
> exit: ExitFailure 1
>>> ... so finally I am downloading your package to see if I can figure out a fix for windows boxes. Just thought I would give you a heads up on this windows-related bug.
>> Thanks,
> Roderick
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20100319/af0ecd6f/attachment.html