From: John O'D. <joh...@gl...> - 2016-10-20 08:44:08
|
Hello, This is a followup to a question I posted yesterday. I have a project which I (unfortunately) ported to gtk3, but it no longer builds with ghc-8.01 on Windows 10, using stack. It fails with the following message: > Configuring pango-0.13.3.0... > setup.EXE: Missing dependency on a foreign library: > * Missing (or bad) header file: hspango.h Downloading hspango.h and putting it in a directory where it will be found doesn't help. A web search shows that someone else had exactly this problem two years ago. A further search shows that gtk2hs is known to work on... Windows XP, which of course is 15 years old. Is the project dead, or is it still supported? If so, is it supposed to work on Windows, or is that platform abandoned? Thanks, John |
From: Hamish M. <ham...@gm...> - 2016-10-21 08:34:55
|
Hi John, I have updated the readme file for Gtk2Hs https://github.com/gtk2hs/gtk2hs#gtk2hs You might also want to take a look appveyor script used to build the Windows MSI file for Leksah https://github.com/leksah/leksah/blob/master/appveyor.yml It installs everything needed for gtk2hs and haskell-gi. Building of Leksah for Windows is broken right now because I updated Leksah to WebKit2 before checking if that was in MSYS2 yet. On Thu, 20 Oct 2016 at 21:44 John O'Donnell <joh...@gl...> wrote: > Hello, > > This is a followup to a question I posted yesterday. I have a project > which I (unfortunately) ported to gtk3, but it no longer builds with > ghc-8.01 on Windows 10, using stack. It fails with the following message: > > > Configuring pango-0.13.3.0... > > setup.EXE: Missing dependency on a foreign library: > > * Missing (or bad) header file: hspango.h > Downloading hspango.h and putting it in a directory where it will be > found doesn't help. A web search shows that someone else had exactly > this problem two years ago. > > A further search shows that gtk2hs is known to work on... Windows XP, > which of course is 15 years old. Is the project dead, or is it still > supported? If so, is it supposed to work on Windows, or is that > platform abandoned? > > Thanks, > John > > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, SlashDot.org! http://sdm.link/slashdot > _______________________________________________ > Gtk2hs-users mailing list > Gtk...@li... > https://lists.sourceforge.net/lists/listinfo/gtk2hs-users > |
From: John O'D. <joh...@gl...> - 2016-10-21 11:20:15
|
Hi Hamish, Thanks very much. Unfortunately it doesn't work: with ghc 7.8 I was able to get both gtk and gtk3 to install, but neither will install with ghc 8.01. There is this fatal error about hspango.h - it doesn't help to provide this in any of the include/lib/path and so on, apparently the path to hspango.h is baked in to gtk. Perhaps it works on one of the developer's private machines but on no other. The only possible way forward I can imagine is to find some package that uses either gtk or gtk3, with a completely automated installer that works, and then I could try installing that. I tried installing Leksah, but unfortunately that won't install either. By the way, one bad mistake I made a year ago was to move from gtk to gtk3. gtk3 loses a lot of functionality, and is also rather inelegant (there are some style configurations that you have to set in a CSS file and others that you have to set by explicit calls to functions). Many of the style settings in gtk3 don't work at all. It's possible that they work on Linux but not on Windows. Thanks again John On 10/21/2016 9:34 AM, Hamish Mackenzie wrote: > Hi John, > > I have updated the readme file for Gtk2Hs > https://github.com/gtk2hs/gtk2hs#gtk2hs > > You might also want to take a look appveyor script used to build the > Windows MSI file for Leksah > https://github.com/leksah/leksah/blob/master/appveyor.yml > > It installs everything needed for gtk2hs and haskell-gi. > > Building of Leksah for Windows is broken right now because I updated > Leksah to WebKit2 before checking if that was in MSYS2 yet. > > On Thu, 20 Oct 2016 at 21:44 John O'Donnell > <joh...@gl... <mailto:joh...@gl...>> wrote: > > Hello, > > This is a followup to a question I posted yesterday. I have a project > which I (unfortunately) ported to gtk3, but it no longer builds with > ghc-8.01 on Windows 10, using stack. It fails with the following > message: > > > Configuring pango-0.13.3.0... > > setup.EXE: Missing dependency on a foreign library: > > * Missing (or bad) header file: hspango.h > Downloading hspango.h and putting it in a directory where it will be > found doesn't help. A web search shows that someone else had exactly > this problem two years ago. > > A further search shows that gtk2hs is known to work on... Windows XP, > which of course is 15 years old. Is the project dead, or is it still > supported? If so, is it supposed to work on Windows, or is that > platform abandoned? > > Thanks, > John > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, SlashDot.org! http://sdm.link/slashdot > _______________________________________________ > Gtk2hs-users mailing list > Gtk...@li... > <mailto:Gtk...@li...> > https://lists.sourceforge.net/lists/listinfo/gtk2hs-users > |
From: Hamish M. <ham...@gm...> - 2016-10-21 12:31:31
|
> The only possible way forward I can imagine is to find some package that uses either gtk or gtk3, with a completely automated installer that works, and then I could try installing that. I tried installing Leksah, but unfortunately that won't install either. I think the best way to install GTK on Windows these days is to use MSYS2. For the exact steps needed check out the appveyor file for Leksah (appveyor is like travis but for Windows). The appveyor file is here: https://github.com/leksah/leksah/blob/master/appveyor.yml I did break it recently by upgrading Leksah to a version of WebKitGTK that is not supported on MSYS2. You can see the last time it ran here (it goes all the way from empty windows machine to Leksah MSI file): https://ci.appveyor.com/project/hamishmack/leksah/build/1.0.302 If these steps do not work for you (it is using the gi-gtk3 package not gtk3). Perhaps you could create an appveyor file to reproduce the issue. > By the way, one bad mistake I made a year ago was to move from gtk to gtk3. gtk3 loses a lot of functionality, and is also rather inelegant (there are some style configurations that you have to set in a CSS file and others that you have to set by explicit calls to functions). Many of the style settings in gtk3 don't work at all. It's possible that they work on Linux but not on Windows. Yeah windows version is often a bit crap compared to Linux. What version of Gtk+3 are you using? Which features are not working? On Sat, 22 Oct 2016 at 00:20 John O'Donnell <joh...@gl...> wrote: > Hi Hamish, > > Thanks very much. Unfortunately it doesn't work: with ghc 7.8 I was able > to get both gtk and gtk3 to install, but neither will install with ghc 8.01. > > There is this fatal error about hspango.h - it doesn't help to provide > this in any of the include/lib/path and so on, apparently the path to > hspango.h is baked in to gtk. Perhaps it works on one of the developer's > private machines but on no other. > > The only possible way forward I can imagine is to find some package that > uses either gtk or gtk3, with a completely automated installer that works, > and then I could try installing that. I tried installing Leksah, but > unfortunately that won't install either. > > By the way, one bad mistake I made a year ago was to move from gtk to > gtk3. gtk3 loses a lot of functionality, and is also rather inelegant > (there are some style configurations that you have to set in a CSS file and > others that you have to set by explicit calls to functions). Many of the > style settings in gtk3 don't work at all. It's possible that they work on > Linux but not on Windows. > > Thanks again > > John > > > On 10/21/2016 9:34 AM, Hamish Mackenzie wrote: > > Hi John, > > I have updated the readme file for Gtk2Hs > https://github.com/gtk2hs/gtk2hs#gtk2hs > > You might also want to take a look appveyor script used to build the > Windows MSI file for Leksah > https://github.com/leksah/leksah/blob/master/appveyor.yml > > It installs everything needed for gtk2hs and haskell-gi. > > Building of Leksah for Windows is broken right now because I updated > Leksah to WebKit2 before checking if that was in MSYS2 yet. > > On Thu, 20 Oct 2016 at 21:44 John O'Donnell <joh...@gl...> > wrote: > > Hello, > > This is a followup to a question I posted yesterday. I have a project > which I (unfortunately) ported to gtk3, but it no longer builds with > ghc-8.01 on Windows 10, using stack. It fails with the following message: > > > Configuring pango-0.13.3.0... > > setup.EXE: Missing dependency on a foreign library: > > * Missing (or bad) header file: hspango.h > Downloading hspango.h and putting it in a directory where it will be > found doesn't help. A web search shows that someone else had exactly > this problem two years ago. > > A further search shows that gtk2hs is known to work on... Windows XP, > which of course is 15 years old. Is the project dead, or is it still > supported? If so, is it supposed to work on Windows, or is that > platform abandoned? > > Thanks, > John > > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, SlashDot.org! http://sdm.link/slashdot > _______________________________________________ > Gtk2hs-users mailing list > Gtk...@li... > https://lists.sourceforge.net/lists/listinfo/gtk2hs-users > > > |
From: John O'D. <joh...@gl...> - 2016-10-21 18:00:46
|
Hi Hamish, Thanks for all this information. I tried using it, but it's just a bit overwhelming. I need to change away from all my usual development tools and environment; I started doing this but keep getting further pointers (building gedit of all things!) I guess my problem is that I would need to commit to changing everything, and learning so many new tools, with little confidence that it would work. I've been there before with gtk2hs, which I've installed several times successfully (I think three times) but it always breaks when ghc is upgraded. And I'm keenly aware that the versions of gtk3 that are "supported" are years old. By the way, you asked > Yeah windows version is often a bit crap compared to Linux. What > version of Gtk+3 are you using? Which features are not working? I'm using the gtk3 bundle 3.6.4. One problem is that there is precious little documentation for gtk3. Another problem is that much of the gui style is supposed to be configured with CSS, and there is a list of CSS properties. A year ago, when I had gtk3 working, I went through and tried every one to see what they did. Don't remember exactly, but about ten of them (out of around 100) did something, and the rest had no effect at all. One particular disappointment is that the ability to use CSS to style an individual GUI element doesn't work at all, for any property. Some features, such as the ability to draw a boundary around a GUI element and have it appear raised, or engraved, etc, don't work, and these are really needed to make the GUI usable. In gtk2 there was a function call to create these decorations, but those were removed in gtk3 in favor of CSS styling that doesn't do anything. The bottom line was that my application had a significantly worse visual appearance in GTK3, and there was no benefit of any kind. The reason I had upgraded was a fear that GTK2 might not be supported into the future, but actually that seems to be the case with the entire gtk2hs project, which as far as I can see died a couple of years ago. And the problems go beyond gtk2hs; there has been a lot of dissatisfaction by other users with gtk3, even in a C environment. One company had been using gtk2, then upgraded to gtk3, and were so dissatisfied they decided to abandon gtk entirely and switch to qt. I'll probably also abandon gtk. Thanks again for your help, and best wishes, John On 10/21/2016 1:31 PM, Hamish Mackenzie wrote: > > The only possible way forward I can imagine is to find some package > that uses either gtk or gtk3, with a completely automated installer > that works, and then I could try installing that. I tried installing > Leksah, but unfortunately that won't install either. > > I think the best way to install GTK on Windows these days is to use > MSYS2. For the exact steps needed check out the appveyor file for > Leksah (appveyor is like travis but for Windows). > > The appveyor file is here: > https://github.com/leksah/leksah/blob/master/appveyor.yml > > I did break it recently by upgrading Leksah to a version of WebKitGTK > that is not supported on MSYS2. > You can see the last time it ran here (it goes all the way from empty > windows machine to Leksah MSI file): > https://ci.appveyor.com/project/hamishmack/leksah/build/1.0.302 > > If these steps do not work for you (it is using the gi-gtk3 package > not gtk3). Perhaps you could create an appveyor file to reproduce the > issue. > > > By the way, one bad mistake I made a year ago was to move from gtk > to gtk3. gtk3 loses a lot of functionality, and is also rather > inelegant (there are some style configurations that you have to set in > a CSS file and others that you have to set by explicit calls to > functions). Many of the style settings in gtk3 don't work at all. > It's possible that they work on Linux but not on Windows. > > Yeah windows version is often a bit crap compared to Linux. What > version of Gtk+3 are you using? Which features are not working? > > On Sat, 22 Oct 2016 at 00:20 John O'Donnell > <joh...@gl... <mailto:joh...@gl...>> wrote: > > Hi Hamish, > > Thanks very much. Unfortunately it doesn't work: with ghc 7.8 I > was able to get both gtk and gtk3 to install, but neither will > install with ghc 8.01. > > There is this fatal error about hspango.h - it doesn't help to > provide this in any of the include/lib/path and so on, apparently > the path to hspango.h is baked in to gtk. Perhaps it works on one > of the developer's private machines but on no other. > > The only possible way forward I can imagine is to find some > package that uses either gtk or gtk3, with a completely automated > installer that works, and then I could try installing that. I > tried installing Leksah, but unfortunately that won't install either. > > By the way, one bad mistake I made a year ago was to move from gtk > to gtk3. gtk3 loses a lot of functionality, and is also rather > inelegant (there are some style configurations that you have to > set in a CSS file and others that you have to set by explicit > calls to functions). Many of the style settings in gtk3 don't > work at all. It's possible that they work on Linux but not on > Windows. > > Thanks again > > John > > > On 10/21/2016 9:34 AM, Hamish Mackenzie wrote: >> Hi John, >> >> I have updated the readme file for Gtk2Hs >> https://github.com/gtk2hs/gtk2hs#gtk2hs >> >> You might also want to take a look appveyor script used to build >> the Windows MSI file for Leksah >> https://github.com/leksah/leksah/blob/master/appveyor.yml >> >> It installs everything needed for gtk2hs and haskell-gi. >> >> Building of Leksah for Windows is broken right now because I >> updated Leksah to WebKit2 before checking if that was in MSYS2 yet. >> >> On Thu, 20 Oct 2016 at 21:44 John O'Donnell >> <joh...@gl... >> <mailto:joh...@gl...>> wrote: >> >> Hello, >> >> This is a followup to a question I posted yesterday. I have a >> project >> which I (unfortunately) ported to gtk3, but it no longer >> builds with >> ghc-8.01 on Windows 10, using stack. It fails with the >> following message: >> >> > Configuring pango-0.13.3.0... >> > setup.EXE: Missing dependency on a foreign library: >> > * Missing (or bad) header file: hspango.h >> Downloading hspango.h and putting it in a directory where it >> will be >> found doesn't help. A web search shows that someone else had >> exactly >> this problem two years ago. >> >> A further search shows that gtk2hs is known to work on... >> Windows XP, >> which of course is 15 years old. Is the project dead, or is >> it still >> supported? If so, is it supposed to work on Windows, or is that >> platform abandoned? >> >> Thanks, >> John >> >> >> ------------------------------------------------------------------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, SlashDot.org! http://sdm.link/slashdot >> _______________________________________________ >> Gtk2hs-users mailing list >> Gtk...@li... >> <mailto:Gtk...@li...> >> https://lists.sourceforge.net/lists/listinfo/gtk2hs-users >> > |
From: Hamish M. <ham...@gm...> - 2016-10-21 22:16:41
|
The Gtk 3.6 branch is 4 years old (although 3.6.4 is only 2.5 years old). The preferred way to install Gtk on Windows (according to www.gtk.org <http://www.gtk.ord>) is now with MSYS2. The version you get is Gtk 3.20.3. I understand your concern about not wanting to abandon your working setup and I don't think you should until you know you have something new that works. At the risk of just giving you more new tools to learn, I have found it very useful to be able to spin up a WIndows VM for testing out new Leksah stuff. You can download a testing VM from here: https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/ You will need Virtual Box or VM Ware to run them (I use Virtual Box). I boot up a new Windows VM and it gives me a safe place to try out new stuff. They only last for 30 days, but that does not matter if you are only testing stuff out. Here is what I would typically do to get Gtk2Hs running in such a VM: Install https://chocolatey.org/ and http://msys2.github.io/ (these come installed on appveyor build agents). Then I follow the steps in the appveyor file which I have transcribed here (I left out some stuff Leksah uses that you probably don't need): SET PATH=%APPDATA%\cabal\bin;C:\msys64\mingw64\bin;C:\msys64\usr\bin;C:\ProgramData\chocolatey\lib\ghc\tools\ghc-8.0.1\bin;C:\ProgramData\chocolatey\lib\cabal\tools;%PATH% SET PKG_CONFIG_PATH=C:\msys64\mingw64\lib\pkgconfig SET XDG_DATA_DIRS=C:\msys64\mingw64\share choco install ghc --version 8.0.1 pacman -S -q --noconfirm mingw64/mingw-w64-x86_64-pkg-config mingw64/mingw-w64-x86_64-gobject-introspection mingw64/mingw-w64-x86_64-gtksourceview3 mingw64/mingw-w64-x86_64-webkitgtk3 After that you the VM should be ready to install Gtk2Hs: cabal update cabal install gtk3 Then you can build your app and make sure it still looks ok all without messing with your current build system. On Sat, 22 Oct 2016 at 07:00 John O'Donnell <joh...@gl...> wrote: > Hi Hamish, > > Thanks for all this information. I tried using it, but it's just a bit > overwhelming. I need to change away from all my usual development tools > and environment; I started doing this but keep getting further pointers > (building gedit of all things!) > > I guess my problem is that I would need to commit to changing everything, > and learning so many new tools, with little confidence that it would work. > I've been there before with gtk2hs, which I've installed several times > successfully (I think three times) but it always breaks when ghc is > upgraded. And I'm keenly aware that the versions of gtk3 that are > "supported" are years old. > > By the way, you asked > > Yeah windows version is often a bit crap compared to Linux. What version > of Gtk+3 are you using? Which features are not working? > > I'm using the gtk3 bundle 3.6.4. One problem is that there is precious > little documentation for gtk3. Another problem is that much of the gui > style is supposed to be configured with CSS, and there is a list of CSS > properties. A year ago, when I had gtk3 working, I went through and tried > every one to see what they did. Don't remember exactly, but about ten of > them (out of around 100) did something, and the rest had no effect at all. > One particular disappointment is that the ability to use CSS to style an > individual GUI element doesn't work at all, for any property. Some > features, such as the ability to draw a boundary around a GUI element and > have it appear raised, or engraved, etc, don't work, and these are really > needed to make the GUI usable. In gtk2 there was a function call to > create these decorations, but those were removed in gtk3 in favor of CSS > styling that doesn't do anything. > > The bottom line was that my application had a significantly worse visual > appearance in GTK3, and there was no benefit of any kind. The reason I had > upgraded was a fear that GTK2 might not be supported into the future, but > actually that seems to be the case with the entire gtk2hs project, which as > far as I can see died a couple of years ago. > > And the problems go beyond gtk2hs; there has been a lot of dissatisfaction > by other users with gtk3, even in a C environment. One company had been > using gtk2, then upgraded to gtk3, and were so dissatisfied they decided to > abandon gtk entirely and switch to qt. I'll probably also abandon gtk. > > Thanks again for your help, and best wishes, > John > > > On 10/21/2016 1:31 PM, Hamish Mackenzie wrote: > > > The only possible way forward I can imagine is to find some package > that uses either gtk or gtk3, with a completely automated installer that > works, and then I could try installing that. I tried installing Leksah, > but unfortunately that won't install either. > > I think the best way to install GTK on Windows these days is to use > MSYS2. For the exact steps needed check out the appveyor file for Leksah > (appveyor is like travis but for Windows). > > The appveyor file is here: > https://github.com/leksah/leksah/blob/master/appveyor.yml > > I did break it recently by upgrading Leksah to a version of WebKitGTK that > is not supported on MSYS2. > You can see the last time it ran here (it goes all the way from empty > windows machine to Leksah MSI file): > https://ci.appveyor.com/project/hamishmack/leksah/build/1.0.302 > > If these steps do not work for you (it is using the gi-gtk3 package not > gtk3). Perhaps you could create an appveyor file to reproduce the issue. > > > By the way, one bad mistake I made a year ago was to move from gtk to > gtk3. gtk3 loses a lot of functionality, and is also rather inelegant > (there are some style configurations that you have to set in a CSS file and > others that you have to set by explicit calls to functions). Many of the > style settings in gtk3 don't work at all. It's possible that they work on > Linux but not on Windows. > > Yeah windows version is often a bit crap compared to Linux. What version > of Gtk+3 are you using? Which features are not working? > > On Sat, 22 Oct 2016 at 00:20 John O'Donnell <joh...@gl...> > wrote: > > Hi Hamish, > > Thanks very much. Unfortunately it doesn't work: with ghc 7.8 I was able > to get both gtk and gtk3 to install, but neither will install with ghc 8.01. > > There is this fatal error about hspango.h - it doesn't help to provide > this in any of the include/lib/path and so on, apparently the path to > hspango.h is baked in to gtk. Perhaps it works on one of the developer's > private machines but on no other. > > The only possible way forward I can imagine is to find some package that > uses either gtk or gtk3, with a completely automated installer that works, > and then I could try installing that. I tried installing Leksah, but > unfortunately that won't install either. > > By the way, one bad mistake I made a year ago was to move from gtk to > gtk3. gtk3 loses a lot of functionality, and is also rather inelegant > (there are some style configurations that you have to set in a CSS file and > others that you have to set by explicit calls to functions). Many of the > style settings in gtk3 don't work at all. It's possible that they work on > Linux but not on Windows. > > Thanks again > > John > > > On 10/21/2016 9:34 AM, Hamish Mackenzie wrote: > > Hi John, > > I have updated the readme file for Gtk2Hs > https://github.com/gtk2hs/gtk2hs#gtk2hs > > You might also want to take a look appveyor script used to build the > Windows MSI file for Leksah > https://github.com/leksah/leksah/blob/master/appveyor.yml > > It installs everything needed for gtk2hs and haskell-gi. > > Building of Leksah for Windows is broken right now because I updated > Leksah to WebKit2 before checking if that was in MSYS2 yet. > > On Thu, 20 Oct 2016 at 21:44 John O'Donnell <joh...@gl...> > wrote: > > Hello, > > This is a followup to a question I posted yesterday. I have a project > which I (unfortunately) ported to gtk3, but it no longer builds with > ghc-8.01 on Windows 10, using stack. It fails with the following message: > > > Configuring pango-0.13.3.0... > > setup.EXE: Missing dependency on a foreign library: > > * Missing (or bad) header file: hspango.h > Downloading hspango.h and putting it in a directory where it will be > found doesn't help. A web search shows that someone else had exactly > this problem two years ago. > > A further search shows that gtk2hs is known to work on... Windows XP, > which of course is 15 years old. Is the project dead, or is it still > supported? If so, is it supposed to work on Windows, or is that > platform abandoned? > > Thanks, > John > > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, SlashDot.org! http://sdm.link/slashdot > _______________________________________________ > Gtk2hs-users mailing list > Gtk...@li... > https://lists.sourceforge.net/lists/listinfo/gtk2hs-users > > > > |