Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
The Gimp Operating Systems Software Windows

Building Gimp 2.0 on Windows XP? 53

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!"
This discussion has been archived. No new comments can be posted.

Building Gimp 2.0 on Windows XP?

Comments Filter:
  • Not too sketchy. (Score:5, Informative)

    by SenatorTreason ( 640653 ) <senatortreasonNO@SPAMgmail.com> on Wednesday April 07, 2004 @07:54PM (#8798731)
    "...an installer made by a third party, hosted on a free web hosting service?"

    I found this site [arnes.si] linked from the main Gimp site [gimp.org]. 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.
    • by 0x0d0a ( 568518 ) on Wednesday April 07, 2004 @08:12PM (#8798873) Journal
      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.
      • 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 tryi
      • by 0x0d0a ( 568518 )
        That should be "case insensitivity".
  • No. (Score:5, Funny)

    by moosesocks ( 264553 ) on Wednesday April 07, 2004 @07:56PM (#8798750) Homepage
    No. I've never had such urges. Seek help.

  • by ObviousGuy ( 578567 ) <ObviousGuy@hotmail.com> on Wednesday April 07, 2004 @08:02PM (#8798788) Homepage Journal
    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.
      • 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 co

      • by Anonymous Coward
        How many software products do you build every night? 1? 5? 10? 50? 100? 500?

        Maybe for a company that only produces a handful of software titles, trusting the build machines to work flawlessly all the time is fine. You can always fire up another build in the morning if during the nightly the build machine ran out of memory or crashed a head or had any of a number of critical errors occur. But such lackadaisical care paid to the build system is not a luxury many companies can afford.
    • Or install gentoo and type:

      emerge gimp

      or not.. but you'll save plenty of time and can have a beer or two while you sit back and enjoy seeing your build actually work without having to do it the hard way.

  • Building GIMP (Score:5, Informative)

    by Tukon ( 254516 ) on Wednesday April 07, 2004 @08:04PM (#8798815)
    The GIMP wiki has a full page on building GIMP using MinGW here [gimp.org].

    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.
  • Nope (Score:1, Insightful)

    "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?

    Nope. No. Nuh-uh.

    Next!

  • New low (Score:1, Insightful)

    by Anonymous Coward
    Jeez. What is going on with the quality of the Ask Slashdot questions these days?

    What next? "I'm J.Random Hax0R and I thought that I should get my own 3733t L1nux shell setup on my 14.4k modem and like I've got this 486DX33 with 8MB of RAM and a SoundBlaster Pro card but I can't work out how to recompile my own kernel. Can somebody tell me how and give me the config file as well? Greetz to Scr1ptK1dd1es and MrHax0RXtreme"

    The Gimp Wiki has plenty of information on how to compile Gimp for Windows so it'
    • Re:New low (Score:2, Informative)

      by Anonymous Coward
      Maybe he's trying to draw attention to the fact that a compiled version of the gimp for windows costs $79.95, see here [wingimp.org] for more details.

      How's that for *free* software?
  • by Xenkar ( 580240 ) on Wednesday April 07, 2004 @08:25PM (#8798959)
    It's pretty nice but unfortunately the GTK version it requires breaks tray menus in Gaim [sourceforge.net] and breaks Sodipodi's [sodipodi.com] 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.

    • by jtheory ( 626492 ) on Wednesday April 07, 2004 @11:27PM (#8800120) Homepage Journal
      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 [sourceforge.net]:
      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.
      • My experience was, Gaim 0.75 worked fine with Gimp's GTK (20040124), but Gaim 0.76 wouldn't start because it couldn't find a "Procedure entry point".

        I preferred the ability to chat than to use Gimp, so out goes the GTK+ 20040124 and in goes GTK 2.2.4 rev. C (the one recommended by Gaim). Besides, I'm more comfortable with Paint Shop Pro [jasc.com].
        • My experience was, Gaim 0.75 worked fine with Gimp's GTK (20040124), but Gaim 0.76 wouldn't start because it couldn't find a "Procedure entry point".

          Weird -- maybe you're using a different OS version, or something else.... I'm running win2K, with GTK+ 20040124 (I just checked) and Gaim 0.76. And I'm using Gaim right now, so I know it's working. You might want to make sure you uninstall and reinstall Gaim, instead of just putting 0.76 on top of the older version. My older version of Gaim *did* die when
          • No luck.. I installed 20040124, tried to start Gaim, same error message: "The procedure entry point g_completion_set_compare could not be located in the dynamic link library libglib-2.0-0.dll . I have this file, it says it's version 2.2.3.0 ..

            Now installed GTK 2.2.4 rev C, and the libglib-2.0-0.dll also says it's version 2.2.3.0 .. didn't check if the files were exactly the same.

            Maybe you installed Glib separately? Or maybe the glib error is caused by some other error?

            Aah, DLL hell..
    • So that's what happened. Of course, Sodipodi still exports just fine on my linux install, but under winxp it craps out every time since I installed the gimp.
  • Maybe try CygWin (Score:2, Informative)

    by robolemon ( 575275 )
    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.
    • Of course, if you're not accustomed to the shell game that Cygwin plays with all your files, it could become very confusing.

      I stopped building stuff with Cygwin a long time ago for that reason. I still have it on my HD for a handful of tools, but really I should consider building those all with MinGW so that path interpretation works a little more sanely.

      --Joe
  • Uhm (Score:4, Insightful)

    by photon317 ( 208409 ) on Wednesday April 07, 2004 @09:01PM (#8799218)

    Doesn't this belong on an appropriate mailing list or something?
  • CygWin? (Score:2, Informative)

    by 286 ( 620933 )
    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?
    • Re:CygWin? (Score:1, Informative)

      by Anonymous Coward
      Your school's IT deparment is staffed with idiots.

      Cygwin is a single dll that provides a posix emulation layer between via win32 api calls. The rest of cygwin is various source and binary packages available that are available for download via the setup tool. Certain packages (such as sshd for proper installation as a service) will require administrative privileges to properly install. Most packages don't require any special permissions.
    • Re:CygWin? (Score:2, Informative)

      by batkid ( 448363 )
      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.

    • Re:CygWin? (Score:3, Informative)

      by bccomm ( 709680 )
      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 a
      • > (don't know about 9x)

        On Win9x, every process has the equivalent of root privileges. Always.

        On NT, any user can _get_ root (err, LocalSystem) privileges due to a thing
        called a shatter attack (which is basically a local root exploit that can't
        be fixed without breaking the Win32 API), but processes do not all have such
        privileges automatically, and cygwin would be no different from any other
        application in this regard.
    • > But does Cygwin run everything as root?

      No, but the cygwin DLL maintains state such as file descriptor tables and other "kernel level" stuff, so anyone who can write to the DLL's state can screw with any running cygwin process to the point of pretty much owning it. It was designed this way so it would work on Win9x -- if it used the NT native API's exclusively, many of cygwin's design decisions would be a lot more elegant. It's not so much a risk as it sounds though -- any kernel has the same issue,
  • by samrolken ( 246301 ) <samrolken AT gmail DOT com> on Wednesday April 07, 2004 @09:11PM (#8799273)
    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 [sourceforge.net]

    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 [linuxbase.org] 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.
    • Sometimes Gaim tries to use ActiveState's Perl and that breaks something, or tries to use some of Cygwin's libraries.

      That shouldn't happen, at least not if you used mingw all the way through. The whole purpose of compiling using Mingw is so that it uses msvcrt.dll and other common Windows equivalents instead of the Cygwin ones. I suggest you see what "ldd gaim" tells you. If you don't see 'cygwin3.dll' in there, it really shouldn't be loading said DLL. If you do, you didn't build suing Mingw all the w

  • by rf600r ( 236081 ) on Wednesday April 07, 2004 @09:36PM (#8799424) Homepage
    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.
  • No (Score:3, Informative)

    by Dahan ( 130247 ) <khym@azeotrope.org> on Wednesday April 07, 2004 @10:33PM (#8799821)
    Can't say as I've had that urge. When I get the urge to install GIMP in Windows XP, I use an installer [arnes.si] made by a third party, hosted on the Academic and Research Network of Slovenia [arnes.si], recommended by the main GTK+ and GIMP for Windows porter [gimp.org].

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

  • by winchester ( 265873 ) on Thursday April 08, 2004 @03:46AM (#8801187)
    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...
  • by DarkDust ( 239124 ) * <marc@darkdust.net> on Thursday April 08, 2004 @04:12AM (#8801269) Homepage
    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)).
  • click here [sf.net]

    Anyway, I don't have enough time recently to continue the development at a higher pace...

    Please help with the development!

E = MC ** 2 +- 3db

Working...