• Index
  •  » Other news
  •  » No more Windows version until someone handles them

#1 2011-07-09 12:02:46

Tian
Administrator
From: France
Registered: 2006-12-08
Posts: 1647
Website

No more Windows version until someone handles them

While trying to prepare the next release, I lost many time trying to prepare the Windows version, fighting with my Windows installation that decided to stop working.

It should be still possible to use GCstar from the sources on Windows, but unless someone really take care of being responsible for it, it may stop working in the future.

As this version was also using an old version of Gtk2, there is no point for the moment in making efforts to maintain it. If someone wants to handle it, feel free to let me know through this topic. I can explain you what I was doing before to release it. But be prepared to also search a lot on your own to have something more maintainable than how it worked before.

I was using Ant (within Eclipse) and NSIS to generate the installer. If you know these tools, as well as ActiveState Perl, and ideally how to use Gtk2 and perl-gtk2 on Windows, you may be a very good candidate as the new responsible of the Windows release.

Offline

 

#2 2011-07-19 18:07:25

unclepetros
Member
Registered: 2010-04-11
Posts: 88

Re: No more Windows version until someone handles them

Hi Tian,
I know well what you refer to;
I've tried for weeks to make an executable under windows, starting from sources, without success.

I reach a situation in which I could create the executable;
however, when launched it, I received some errors related to gtk2, I didn't manage in finding a solution for.

Anyway, I would give it another try, in the next month (I'm in holiday).

Let me know, if you can give me further useful info.

Regards
UnclePetros

Offline

 

#3 2011-08-16 17:12:21

Godwedor
New member
Registered: 2011-08-14
Posts: 2

Re: No more Windows version until someone handles them

Hello, I hope you can always developp for windows os, your soft is so usefull !
I really wait the next release with pleasure.

friendly

Offline

 

#4 2011-10-01 16:40:50

Li-An
New member
Registered: 2011-10-01
Posts: 1
Website

Re: No more Windows version until someone handles them

Bonjour, j'espère que la version Windows sera maintenue... alors que je découvre juste le logiciel qui va m'être bien pratique pour gérer ma documentation (enfin, si je trouve le courage de m'y mettre). Je suis prêt à faire un petit don vu que j'ai failli investir dans un autre logiciel du même type mais un peu lourdingue à l'usage... :-)

Offline

 

#5 2011-11-07 18:43:36

hesamdl
New member
Registered: 2011-11-07
Posts: 1

Re: No more Windows version until someone handles them

Hi, GCStar is a wonderful all in one app that I love it!

I'm a windows user for years and I know NSIS and can do many thing in windows by scripting, like making portable apps, auto installers, Installations and so on (using NSIS, autoit and maybe some other languages), but I don't know anything about GTK and Perl till now.

I wish I knew what should I do to make a linux version work on windows, so I could find out that I can help you or not.

I downloaded the gcstar v1.6.2 and opened the gcstar file in the bin folder with a text editor, but I had no idea how to make the 10MB windows .exe from this 11KB file?

I'll be happy if I could help the windows development.

Last edited by hesamdl (2011-11-07 18:45:11)

Offline

 

#6 2012-05-01 06:18:40

unclepetros
Member
Registered: 2010-04-11
Posts: 88

Re: No more Windows version until someone handles them

Hi Tian,
as I wrote, the problem is to compile source code successfully under Windows 7. It's a painful task.
I've tried many time but I have had no success.

I would make another try in the next weeks. I'll let you know.

P.S.: good news about the Net-FreeDB perl module for windows.
Seems someone have noticed my bug report I submit about an year ago, and is working on it.
Here the report: https://rt.cpan.org/Public/Bug/Display.html?id=60277

Regards
UnclePetros

Offline

 

#7 2012-07-12 17:23:29

Gendersob
New member
Registered: 2012-07-12
Posts: 1

Re: No more Windows version until someone handles them

I'm a windows user for years and I know NSIS and can do many thing in windows by scripting, like making portable apps, auto installers, Installations and so on (using NSIS, autoit and maybe some other languages), but I don't know anything about GTK and Perl till now.

Offline

 

#8 2012-12-15 15:18:19

Zagarooth
New member
Registered: 2012-12-15
Posts: 4

Re: No more Windows version until someone handles them

I have managed to build the latest version (1.7.0) for windows and made the installer. I will detail all the steps needed and make a ppm repository for gtk2-perl later on when I have more time. For now it would be good it someone could test the build. I have already tested it on a windows 7 64-bit machine (other than the build machine) and it looks good as far as I can tell.

You can find the setup file here (includes gtk runtime libs):
http://heim.ifi.uio.no/oyvinha/gcstar/G … _Setup.exe

Offline

 

#9 2012-12-20 12:42:57

Axquijo
New member
Registered: 2012-12-20
Posts: 3

Re: No more Windows version until someone handles them

@ Zagarooth

Hi, great that someone is looking at making an installer for Window. Thanks for doing so. I tried the installer but get the following error message;

"The program can't start because libgobject-2.0-0.dll is missing from your computer. Try reinstalling the program to fix this problem."

I checked an this file can be found under in the folder c:\program files\GCStar\usr\lib\

Note: This happens when I try to run GCStar for the second time. The firts time I run the program everything seems to be OK.

The version 1.6.1 installation runs fine on the same computer.
(Win 7,  32-bit on a DELL Latitude E6410 with 4GB Ram)

Let me know what if you need further info or if there is a certain test that you would like me to perform. I will also try to install on another machine.

Last edited by Axquijo (2012-12-20 13:40:06)

Offline

 

#10 2012-12-20 22:45:25

mrdah
New member
Registered: 2012-12-20
Posts: 2

Re: No more Windows version until someone handles them

Installed and ran successfully on win xp, win7 32-bits, but it won't start on win7 starter edition.
Note that I had to download separately msvcr100.dll for it to work.

I'd be very interested to know the steps you used to build it as I failed miserably at all my attempts.
The closest I got is having a working 1.70 via the Padre IDE with a strawberry Perl, but I've never managed to build a working PAR'd executable.

Cheers smile

Offline

 

#11 2012-12-21 09:11:19

Zagarooth
New member
Registered: 2012-12-15
Posts: 4

Re: No more Windows version until someone handles them

@  Axquijo

Sound like you are running the gcstar.exe directly, instead of the gcstar.bat. The batch file adds the \usr\lib dir to the PATH variable so windows can find the GTK libs. If you are running the gcstar.bat, then try adding c:\program files\GCStar\usr\lib\ to the PATH environmental variable and see if it works.

@ mrdah

Seems like I'll have to include the msvc 2010 runtime libs. The build is also currently lacking the Locale::Country perl module used by the music collection plugin.

I made an executable with a console for you to test in the starter edition. You can find it here (just replace gcstar.exe in the bin dir, run from a command prompt and post any output):

http://heim.ifi.uio.no/oyvinha/gcstar/gcstar.exe

Offline

 

#12 2012-12-21 09:15:35

Zagarooth
New member
Registered: 2012-12-15
Posts: 4

Re: No more Windows version until someone handles them

Here is a detailed list of the steps I took to build the 1.7.0 windows installer:

1. I used MS VC++ Espress 2010 as the build enviroment (cl/link/nmake).
   You can find it here: http://www.microsoft.com/visualstudio/e … 0-express.
2. ActivePerl was used which you can find here (x86): http://www.activestate.com/activeperl/downloads
   I installed it into C:\Perl.
   Add an enviromental variable called PERL5LIB and set it to: C:\Perl\lib;C:\Perl\site\lib.
3. You will also need the gtk+ all-in-one bundle from here http://www.gtk.org/download/win32.php.
   Just unzip somewhere (I placed it in C:\gtk).
   You will need to add C:\gtk\bin (to use pkg-config) to the PATH enviroment variable.
   You will also need to change C:\gtk\include\fontconfig\fontconfig.h.
   Change this:
   
   #include <unistd.h>
   
   to this:
   
   #ifndef WIN32
   #include <unistd.h>
   #endif
4. I couldn't find all of the perl modules used by gcstar (I used packages\win32\createExec.bat as a guide for dependencies) in the activestate ppm repository. I built these from source.
   I used the Visual Studio Command Prompt (2010) for building since it has all the correct eviromental variables set (it can be found in the start menu under MS VS Express 2010) 
   a. General build guide for all modules is the following:
      1. Generate Makefile: "perl Makefiel.PL" in the command prompt
      2. Build the module: "nmake" in the command prompt
      3. Test the build: "nmake test" in the command prompt. Note that even though some tests may fail on windows for certain modules, the module can still be used
      4. Make the package description: "nmake ppd" in the command prompt
      5. Tar and gzip the blip dir and add the filename to the ppd file in the following line: <CODEBASE HREF="" />
      6. Install the package: "ppm install <package-name>.ppd" in the command prompt      
   b. Get Net-FreeDB module here: http://search.cpan.org/~roam/Net-FreeDB-0.08/FreeDB.pm. Build following instuctions above
   c. Get Datetime-Format-Strptime here: http://search.cpan.org/~drolsky/DateTim … rptime.pm. Build following instuctions above
   d. Get ExtUtils-PkgConfig (1.13) here: http://sourceforge.net/projects/gtk2-perl/files/. Build following instuctions above
   e. Get ExtUtils-Depend (0.302) here: http://sourceforge.net/projects/gtk2-perl/files/. Build following instuctions above
5. At this point i discovered cpanp (I don't really know much about Perl). I used it to try and install PAR-Packer ("cpanp i PAR:Packer" at command prompt). All the dependencies were installed, but not PAR-Packer itself.
   I then got PAR-Packer from here: http://search.cpan.org/~rschupp/PAR-Pac … Packer.pm. Build following instuctions above
6. Next I started on the gtk-perl packages. You'll need them in this order Cairo (1.102), Pango (1.223), Glib (1.262, 1.280 is buggy) and Gtk2 (1.246).
   Get them here: http://sourceforge.net/projects/gtk2-perl/files/. Build following instuctions above
   I gave up on Glib 1.280 which I think has a bug. The only other one I had a problem with was Pango because the cairo lib was missing from the library list in the generated Makefile.
   I therefore added "C:\gtk\lib\cairo.lib" to the variables EXTRALIBS and LDLOADLIBS and reran nmake
7. I then started the work of packing gcstar into a single executable. First I added some missing module dependencies to the createExec.bat (which is located under packages\win32): -M Locale::Country -M Encode::Byte
   I added cairo as a shared library: "--link=C:\Perl\site\lib\auto\Cairo\Cairo.dll"
   I changed the version in the info part at the end
   Changed C:\Perl\bin\pp to just pp (my pp is located in C:\Perl\site\bin and it's added to the PATH anyways)
   I then removed the -g option which builds the exe with a command prompt (so I could more easily debug) and I changed "-o gcstar.exe" to "-o gcstar.par" for the next step.
   It takes a while to make the par file (45 minutes on my machine). Using an SSD and disabling antivirus may improve the time.
8. The PAR:Packer seem to have a funny way of handling libraries. It mangles the names at run-time (except those added as shared libs), which means windows doesn't know which libraries it has loaded.
   Since the gcstar.par file contains two versions of the Pango, Cairo, Glib and Gtk2, both will be loaded and symbols will be used from both libraries, but only one has performed Glib init -> program dies
   The solution is to remove the version of the libs that get name-mangled (located in lib\auto) and keep the ones who have their names intact (located in shlib).
   Just unzip the gcstar.par file, remove Cairo/Pango/Glib/Gtk2 DLLs under lib\auto and zip it up again.
9. Make an icon pp understands. I had to make a new icon using gmip which was 48x48, 24bpp, 1bpp transparency, no PNG compression.
10. Make the exe files. Run "pp --icon NewIcon.ico -g -o gcstar.exe gcstar.par". This exe files is dependent on the gtk libs, so in the next step we will make a standalone setup file
11. I made a seperate build directory to build the setup exe file using NSIS (you can get NSIS here: http://nsis.sourceforge.net/Download)
    I copied the gcstar directory and called it gcstar-build
    I copied all files under packages\win32 to the top-level
    I added DLLs in C:\gtk\bin to gcstar-build\usr\lib
    I added gtk-2.0 dir in C:\gtk\lib to gcstar-build\usr\lib
    I added the following exe files in C:\gtk\bin to gcstar-build\usr\bin: fc-cache.exe  gdk-pixbuf-query-loaders.exe  gtk-update-icon-cache.exe fc-list.exe   gtk-query-immodules-2.0.exe   pango-querymodules.exe
    I added fonts, gtk-2.0 and pango dir in C:\gtk\etc to gcstar-build\usr\etc
    I added locale and themes dir under C:\gtk\share to gcstar-build\usr\share   
12. Now just right-click on the gcstar.nsi file and choose "Compile NSIS Script". This will produce the GCstar_1.7.0_Setup.exe file and you're done


I used these sites as references to figure the hard parts out:
General guide: http://gtk2-perl.sourceforge.net/win32/ … win32.html
PAR::Packer name mangling: http://grokbase.com/t/perl/par/122a52pa … nit-failed
Icons for pp: http://www.perlmonks.org/?node_id=823968

Offline

 

#13 2012-12-21 14:04:32

Axquijo
New member
Registered: 2012-12-20
Posts: 3

Re: No more Windows version until someone handles them

@ Zagarooth

The program was run from gcstar.bat so I did as you suggested and added the c:\program files\GCStar\usr\lib\ to the PATH environmental variable.
The batch file looks like this;

Code:

@echo off

cd %0\..
set PATH=..\usr\bin;..\usr\lib;c:\program files\GCStar\usr\lib\;%PATH%
set LANG=EN
start gcstar.exe %1

Now I get another error message;

GcStar.exe-Entry Point Not Found
The procedure entry point g_assert_warning could not be located in the dynamic link library Libglib-2.0-0.dll

I do not have a clue what this means. I now also get this message when I run the original batch file too. Seems like things are getting worse.
I will try to install on another computer.

Last edited by Axquijo (2012-12-21 14:05:09)

Offline

 

#14 2012-12-21 17:51:09

Zagarooth
New member
Registered: 2012-12-15
Posts: 4

Re: No more Windows version until someone handles them

It seems like you have an old version of the GTK runtime libs in either your C:\Windows, C:\Windows\System or C:\Windows\System32 directory. These are loaded before the GTK runtime libs in directories specified in the PATH variable. Search for "libglib-2.0-0.dll" in the C:\Windows directory (and subdirs) to see if you can find it there.

You will have to remove the old GTK runtime libs from the windows and/or system directories so the correct version of the GTK runtime libs can be loaded by GCstar.

Offline

 

#15 2012-12-21 21:49:06

mrdah
New member
Registered: 2012-12-20
Posts: 2

Re: No more Windows version until someone handles them

@ Zagarooth

Well... I don't know if you did anything special apart from the console mode, but this one is working in Win7 Starter Edition.
It took a while to start the first time but I could open a collection without any problem (and no output in the console).

And thanks for all the info... the culprit of my failures might be the mangling thingy. I'll have a read during the holidays and will try later on.

Merry Xmas smile

Offline

 

#16 2012-12-22 11:22:15

Axquijo
New member
Registered: 2012-12-20
Posts: 3

Re: No more Windows version until someone handles them

@ Zagarooth

I did a search for "libglib-2.0-0.dll" and found the file in the C:\Windows\System32 folder and another version of the file in a directory of a portable version of 'Songbird'.

I removed both files and tried to run GCstar again, using different paths in the bat file (see earlier post). I now get the message that the file libglib-2.0-0.dll is missing. The file should be loaded from the ..\GCstar\user\lib\ folder, right ?
Maybe this is not important but I noticed that I get the error window twice, so when I close the first window I get the message a second time.

I also tried installing on another computer running Win 7 ultimate edition (x86). After the installing I tried to start but the program did not run because the file msvcr100.dll was missing.
So I downloaded the Microsoft Visual C++ 2010 Redistributable Package (x86) and installed it.
Package can be found here; http://www.microsoft.com/en-us/download … px?id=5555

After the installation I tried to run GCstar again from the original GCstar bat file and....bingo. The program started up, however starting up is slow.
The default installation language is German. It is not a problem, but maybe this could be changed to English.

I also copied the complete installed GCstar folder to an USB pendrive   and tried to run it from the pendrive on another computer (OS = Win 7 Ultimate edition X 64). To my surprise the program started. I did not yet test the program any further but this looks promising. A portable version would be great. big_smile

So I guess I'm back where I started with the installation on the first computer. Any other suggestions ?
I will continue to install on other computers.

Greetz,

Last edited by Axquijo (2012-12-22 20:09:06)

Offline

 

#17 2013-01-21 18:14:59

sarakha63
New member
Registered: 2013-01-21
Posts: 1

Re: No more Windows version until someone handles them

I love this app and im a windows user. I tried this version because 1.7.0 seems to correct the range filter bug.

This versions seems to work, but it bugs when i want to display using the image mod. Any suggestion or correction for this

Offline

 

#18 2016-03-21 16:04:02

kerenoc
Member
Registered: 2016-03-19
Posts: 33

Re: No more Windows version until someone handles them

Hello Windows users,

One can still use the  GCstar binaries distributions to run the newest 1.7.1 version. Simply uncompress the gcstar-*.tar.gz in the installation directory on Windows.

Offline

 
  • Index
  •  » Other news
  •  » No more Windows version until someone handles them



Should you have a problem using GCstar, you can open a bug report or request some support on GCstar forums.