Slashdot Mirror


Building Gimp 2.0 on Windows XP?

Anonymouse asks: "Has anyone out there just had the urge to build Gimp 2.0 on Windows instead of using an installer made by a third party, hosted on a free web hosting service? It's probably fine but it makes me nervous, so I figure I should try building it on Windows instead...besides, it could be educational! Does anyone have any instructions/suggestions for building the source on Windows XP using MinGW and MinSYS? Keep in mind I have no experience with *nix, and my meek programing skillz only apply to Perl. Thanks!"

24 of 53 comments (clear)

  1. Not too sketchy. by SenatorTreason · · Score: 5, Informative
    "...an installer made by a third party, hosted on a free web hosting service?"

    I found this site linked from the main Gimp site. It doesn't look too sketchy to me. Why don't you use that?
    If you really want to compile from scratch, do it on Linux first with native Linux programs. When you get the hang of that, move to Windows. I'm all for sink-or-swim type trials, but, in this case, I think you'll sink. Very quickly.
    1. Re:Not too sketchy. by 0x0d0a · · Score: 3, Insightful

      If you really want to compile from scratch, do it on Linux first with native Linux programs. When you get the hang of that, move to Windows. I'm all for sink-or-swim type trials, but, in this case, I think you'll sink. Very quickly.

      Second that. Most software builds are much more extensively tested and used (and made easier and more reliable to build) under Linux. Linux distros come with a good set-up-in-a-standard-manner development toolset.

      A lot of Windows port work isn't kept up-to-date.

      Putting together your own cygwin or mingw toolchain (not that that's a bad idea in general) already is a severe pain in the ass. It can be real black magic to figure out what people last did to get primarily-used-on-UNIX-software building. When you couple that with the fact that there are all *sorts* of interesting problems that come up on Windows (case sensitivity suddenly existing, line feeds mattering, etc) things can get much more interesting.

    2. Re:Not too sketchy. by baldass_newbie · · Score: 2, Interesting

      Putting together your own cygwin or mingw toolchain (not that that's a bad idea in general) already is a severe pain in the ass. It can be real black magic to figure out what people last did to get primarily-used-on-UNIX-software building.

      Black Magic is putting it mildly. You could build a Gentoo system for how long it takes to cygwin configured just so.
      And that's not a knock on Cygwin's fine efforts, it's just the matter of fact. You're trying to dupe an OS's behavior on another OS.

      I started trying to do this very thing and realized what a colossal waste of time it was going to be.

      A good way to see if you have things working would be to try and build freeciv. That'll keep him busy. ;-)

      --
      The opposite of progress is congress
    3. Re:Not too sketchy. by 0x0d0a · · Score: 2, Insightful

      That should be "case insensitivity".

  2. No. by moosesocks · · Score: 5, Funny

    No. I've never had such urges. Seek help.

    --
    -- If you try to fail and succeed, which have you done? - Uli's moose
  3. Build is a discipline all to itself by ObviousGuy · · Score: 4, Informative

    Many software shops have dedicated build teams that do nothing more than make sure that the software is rebuilt from source every day. This entails tweaking build scripts, makefiles, and making sure that the proper libraries are available for the compiler and linker.

    This is not an easy task, though once set up properly it becomes fairly self-managing.

    Since you are coming from Perl where there is nothing to compile, it would probably be best to start by installing Cygwin and gcc and just try compiling a few simple programs first. READ the makefiles. Understanding the makefiles will make understanding the build process much easier.

    --
    I have been pwned because my /. password was too easy to guess.
    1. Re:Build is a discipline all to itself by Karora · · Score: 2, Insightful
      • Many software shops have dedicated build teams that do nothing more than make sure that the software is rebuilt from source every day. This entails tweaking build scripts, makefiles, and making sure that the proper libraries are available for the compiler and linker

      Really? I don't know about other people, but where I work we do this stuff with computers!

      Maintaining a team of people to autobuild would be really expensive, but maintaining a couple of computers to do it has mostly involved some setup costs.

      And it has been utterly fantastic, in terms of making sure we don't deliver broken software :-)

      --

      ...heellpppp! I've been captured by little green penguins!
  4. Building GIMP by Tukon · · Score: 5, Informative

    The GIMP wiki has a full page on building GIMP using MinGW here.

    Not something that is worthy of an Ask Slashdot in my opinion, but we're here to help I guess. Also, check out the #gimp channel on irc.gimp.org for some help.

    -Tukon
    Stating the obvious.

    1. Re:Building GIMP by FattMattP · · Score: 5, Funny

      Ask Slashdot: Helping people who can't use search engines since 1999.

      --
      Prevent email address forgery. Publish SPF records for y
    2. Re:Building GIMP by SpaceLifeForm · · Score: 2, Funny

      Well, helping others can be therapeutic,
      it relieves stress from all of the SCO bashing.

      --
      You are being MICROattacked, from various angles, in a SOFT manner.
  5. My experiences with GIMP 2.0 on Windows by Xenkar · · Score: 5, Informative
    It's pretty nice but unfortunately the GTK version it requires breaks tray menus in Gaim and breaks Sodipodi's PNG export function and produces many errors.

    I downgraded to GTK 2.2.4.2 revision C and went back to GIMP 1.25. I'll give GIMP 2.0 another try when GTK+ 2.4.1 is released.

  6. Maybe try CygWin by robolemon · · Score: 2, Informative

    Maybe you ought to try CygWin and therefore compile Gimp for Windows in a Linux-like environment without needing to install an entirely new operating system. I am assuming of course that the ability to build Gimp for Windows comes easily provided you're building in Linux.

    --

    I design user interfaces for a free network management application,

  7. Uhm by photon317 · · Score: 3, Insightful


    Doesn't this belong on an appropriate mailing list or something?

    --
    11*43+456^2
  8. CygWin? by 286 · · Score: 2, Informative

    People keep saying to start with installing Cygwin. But does Cygwin run everything as root? I am not a windows person but that is what my school claims is stopping them from installing it in the MS labs. If precompiled binaries make you nervous always running as root sounds worse. Is MinGW any better?

    1. Re:CygWin? by batkid · · Score: 2, Informative

      The answer is no, cygwin does not running EVERYTHING as root. You can sync the cygwin passwd file with the windows account on the local machine and you can have windows level security in a *nix like environment.

      Cygwin is one of those really valuable tools that I use day in and day out. I installed cygwin on a windows server and now I have the best of both worlds. I can ssh into my windows machine and run windows commands as well as unix ones.

    2. Re:CygWin? by bccomm · · Score: 3, Informative

      There is no `root' in Cygwin. On Windows NT, the NT names are simply translated to a simple uid scheme (don't know about 9x). The names aren't even necessarily POSIX-compliant (eg. spaces are allowed). When the setuid(2) function is called, the DLL returns ENOSYS (not implemented). In short, Cygwin is pretty advanced (I almost got NetBSD cross-built on it one time, and I've been working to maybe get pkgsrc working, but that's another matter) but when it comes to security, well, the abstraction can only be as good as the underlying implementation. If a Windows box has tightened security, *cough*cough*choke*, then some operations may need the Cygwin1.dll run as ``Administrator,'' but default Windows installs give enough privilages to regular users that this is rarely a concern. Basically, programs aren't usually designed to check for `root', but rather for enough permissions to do whatever they need. If a cygwin binary cannot do something, like chdir'ing into an NT-restricted directory, it will just fail. MinGW does the exact same thing, but with no POSIX-esque layers, instead directly calling on msvcX.dll.

      As was already said by someone, your school's tech department is run by morons. If they truly wanted security, they wouldn't be running Windows in the first place.

      In one sentance: yes, everything in both MinGW and Cygwin is run as a `root'-ish user, but native programs have the exact same set of permissions. Running either is no more a security risk than is running Windows itself.

      -Bruce
      ---------
      |\|3+85D: f0r +3h r3a1 133t h4x0r5!!!!!1 Those who know will attest! They will agree! They already use it! They will not use annoying hacker-esque stereotypes!

  9. Experiences from Gaim by samrolken · · Score: 3, Informative

    I've built Gaim for Windows before, and I think it would be quite similar to building The Gimp 2.0 since they both use a lot of the same software...

    The basic idea is to install cygwin, and use make and python and perl and all that other stuff the build process needs, but replace the compilers and libraries in your path with the ones from mingw.

    See here for more info:

    Windows Development - gaim

    When installing or compiling UNIX apps that have been ported to Windows, especially ones using GTK+, all kinds of crazy things end up happening with confused DLLs. Sometimes Gaim tries to use ActiveState's Perl and that breaks something, or tries to use some of Cygwin's libraries. What we need is something like the LSB that governs how UNIX-compatible environments (Cygwin and MinGW mainly) should work on Windows. That would be a big help to folks like me who must use Windows (No, trolls. I can't use Linux. I have reasons. Go away.) but want to have appilcations and environments that are UNIXey.

    --
    samrolken
  10. Re:New low by Anonymous Coward · · Score: 2, Informative

    Maybe he's trying to draw attention to the fact that a compiled version of the gimp for windows costs $79.95, see here for more details.

    How's that for *free* software?

  11. But... but... but... by rf600r · · Score: 5, Funny

    Uhhhh, you're using WindowsXP.
    How did you find this webpage?
    What are you doing here?

    You're making me very nervous.

    Is this a trick?
    I have to go now.

  12. No by Dahan · · Score: 2, Informative
    Can't say as I've had that urge. When I get the urge to install GIMP in Windows XP, I use an installer made by a third party, hosted on the Academic and Research Network of Slovenia, recommended by the main GTK+ and GIMP for Windows porter.

    But if you feel like building it yourself, be my guest.

  13. Broken tray menus in Gaim? by jtheory · · Score: 3, Informative
    If the only problem you saw in Gaim was the broken tray menus... then your version of GTK might not have been the problem.

    From their win32 page:
    What happened to the Gaim systray icon? - As of 0.65 systray functionality has moved into the docklet plugin, labeled "System Tray Icon" in Gaim's plugins section (under Preferences). You will need to load this plugin for the systray features to work.


    On the other hand, I just downloaded Gaim 0.76 (because I broke the old version when I upgraded GTK for GIMP 2.0)... and the tray icon is working fine, no changes on my part at all.

    Hmm. Either way, you should consider another shot.
    --
    There are only 10 types of people: those who understand decimal, those who don't, and, uh, 8 other types I forget.
  14. Re:New low by Cecil · · Score: 3, Informative

    Good thing there's also a free-as-in-beer version. You can do that sort of thing with free-as-in-speech programs. You can also try to make a profit if you like.

    You're *free* to do whatever you like. Isn't that great?

  15. Building a native win32 gimp? by winchester · · Score: 3, Interesting

    IMO it would be a lot more challenging to try and build a native win32 binary. Yes, this means using the dreaded MFC, though I myself would prefer the way cleaner implementation of the ATL (or even the largely undocumented WTL).

    Of course building a Gimp 2 in managed code on the .NET platform would be even more interesting... imagine having a complete managed open source application to run on Longhorn way before anyone else has one...

  16. And why don't you... by DarkDust · · Score: 2, Insightful

    And why don't you just go to the GIMP homepage, subscribe to the GIMP mailing list and ask the developers ?

    Seriously, if you're so lazy that you're using Ask Slashdot instead of their mailing list you should stick with the installer ! Especially since compiling GIMP 2.0 is diving into dependency hell (you'll need to compile about half a dozen libraries first, ATK, glib, GTK+, ... all in the correct order and with the right options (like Xft support, and if you want to use your graphic tablet you need XInput... at least on Linux/UNIX, YMMV on Windows of course)).