On 17 January 2012 21:38, Jeremy O'Donoghue <jeremy.odonoghue@gmail.com> wrote:
Hi all,
I have collected together all of the people who I know are making the effort to build Dave's latest code on different platforms. I'd also like to introduce Andrej, who is testing wxC in the context of D (so could we go easy on the Zygohistomorphic Premorphisms and other deep Haskell-ism in this thread :-)
I'd suggest that we try to pull together all of the experiences into a single thread - makes it easier for people to keep up.
For the moment, I'd like to bring up my experience with wxC on Windows:
First, you need at least a patch to wx-config-win32 which sorts out library names (msys libraries are incorrectly named due to a 2.8/2.9 change)

At line 948 of wx-config-win.cpp, you need:
if (cfg["BUILD"] == “debug” && cfg["DEBUG_FLAG"] == “default”)
po["WXDEBUGFLAG"] = “”;

if (cfg["DEBUG_FLAG"] == “1″)
po["WXDEBUGFLAG"] = “”;

Second, in wxc/Setup.hs you need to change line 82 (just after output readProcess “wx-config” ["--libs", "std,gl,stc,xrc,richtext,aui,media", "--cppflags"] “”

This is needed because wx-config-win does not support the new ‘all’ flag, and I haven’t had time to fix wx-config-win properly.

Third, the library then builds for me, but fails to link (link errors in StyledTextCtrl). I hope to work out why tonight or tomorrow.


I've worked out why, but haven't fixed it.
wx-config-win doesn't know about some of the new libraries, and is giving incorrect results in other cases. I don't have time to fix this tonight, but:
C:\usr\local\src\haskell\wxhaskell-dev\wxhaskell-2.9\wxc>wx-config --libs base,gl,xrc,richtext,aui,media returns
 -mthreads -LD:\Builds\wxWidgets-2.9.3\lib\gcc_dll -lwxmsw29u_richtext -lwxmsw29u_gl -lopengl32 -lglu32 -lwxmsw29u_media -lwxbase29u -lwxtiff
-lwxjpeg -lwxpng -lwxzlib -lwxregexu -lwxexpat -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwxregexu -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32
-loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32
C:\usr\local\src\haskell\wxhaskell-dev\wxhaskell-2.9\wxc>wx-config --libs returns
 -mthreads -LD:\Builds\wxWidgets-2.9.3\lib\gcc_dll -lwxmsw29u_html -lwxmsw29u_adv -lwxmsw29u_core -lwxbase29u_xml -lwxbase29u_net
-lwxbase29u -lwxtiff -lwxjpeg -lwxpng -lwxzlib -lwxregexu -lwxexpat -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lw xregexu -lwinspool -lwinmm
-lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32
Missing base libraries in red.
I'll try to fix this tomorrow.