Wednesday, November 18, 2009

*nix-like environments for Windows

*nix like environment is good for developer and sysadmins, and really useful for end-user. That's why we've got KDE, Gnome and similar. But, I like it a lot even if I'm Windows user ;-). There are several cases to set up *nix environment on Windows:
  • setup Virtual Machine with some Linux distributive and you've got fully functional Linux. You can use VMware or VirtualBox
  • or you can setup Linux-like environment in Windows (i.e. bash, gcc, make, grep, find, sed, etc.).
Here is "my" list of choice for such environments.

  1. MinGW - Minimalist GNU for Windows. My top choice if you need GNU development programming tool set. Additional, if you need bash and similar tools install MSYS - general purpose command line environment.
  2. Cygwin -  is a Linux-like environment for Windows. It's very powerful if you need to develop OS-portable application on windows (it's provide substantial Linux API functionality). 
  3. GnuWin32 - provides ports of tools with a GNU or similar open source licenses. Check package list on their home page.
  4. UWIN - it's the similar to MinGW and GnuWin32, but less popular.
I prefer to use MinGW/MSYS and Cygwin because they have great community support.

    Monday, November 09, 2009

    GNUstep Getting Started

    Objective-C popularity aggressively increased based on TIOBE Index (for October 2009)

    The reason is simple -- iPhone and all related stuff. We should be ready to develop Objective-C based application in future. The worst thing I don't have a Mac, so I don't have development environment.
    I need to get basic Objective-C knowledge, and here several solutions:
    • buy Mac
    • install Hackintosh on PC
    • try GNU compiler and play with Objective-C
    The better choice is the last one (for me). As I'm a Windows XP user and I don't have a time to set up Linux, I'm going to use some Windows GNU GCC port: Cygwin or MinGW.
    There are two cross-platform projects which implements Objective-C Cocoa/OpenStep APIs:
    • The Cocotron -- this project uses Mac machine for build (I didn't dig into this), but built application can be run on Windows.
    •  GNUstep -- this project supports many platforms (Windows included).
    My choice is

    Here is the useful links for quick start:
    How to build your first GNUstep application in Windows?
    In general it's simple, but if you have some troubles with it here is the links:
    1. Installing and using GNUstep and Objective-C on Windows
    2. Writing GNUstep Makefiles (I highly recommend it)
    3. Compile Objective-C Programs Using gcc
    The next post will be about tuning the development environment for GNUstep .