C++ C# IDEs Under Linux

Hello Every one,
I came across some C++ & C# development Environment for Linux.
I just showing there names here:

  • Eclipse, with CDT
  • NetBeans ( Thanks to Abdelghany addition)
  • CodeBlocks
  • Anjuta
  • KDEvelop

For Java: Both Eclipse and NetBeans works great.

And for C#.Net and VB.Net I found

  • Monodevelop

share better names if you have and try those if you have not.

C++ IDEs –> The Most Popular Six IDEs For Developing Software in C/C++

This Article is not mine, The Source Here


For all the languages getting created these days, a decent IDE seems to be created even before the development of the language reaches the final stage 😉 But even after being in the academics and in the industry for more than three decades, there isn’t one consistently released, active C++ IDE project for the Windows platforms. Some names that come to mind when thinking about C++ IDEs for Windows platform are: DevC++, MinGW Studio, Emacs, Microsoft Visual Studio, CodeBlocks, Eclipse etc. Except DevC++, I use all the other C++ IDEs fairly regularly even today whenever I get to work in Windows.

1. DevC++

DevC++ C++ Programming IDE Screenshot
DevC++ is one of the most popular C++ IDEs amongst the student community as I was able to see during my visits to a few C++ forums on the Internet – 8 out of 10 people on such forums stated that they use DevC++ IDE and whole-heartedly recommend it to the others. I have heard very few complaints from such DevC++ fans, which makes me wonder why I was never able to make myself to like this development tool, DevC++ always looked ugly and unintuitive to me. Most of the C++ programmers from the student community have exactly the opposite to say about it though and it is the first choice for those who want to develop Windows applications using SDL, wxWidgets or DirectX SDK. DevC++ IDE uses MinGW port of gcc as the compiler. It is also an actively developed product though the rate at which it is developed seems to be a bit low. I have read that it is now supported on gnu/linux platform too though I have never tried it myself outside of Windows platform.

More Information & Download

2. MinGW Studio

MinGW Studio C++ IDE Screenshot
MinGW Studio is my answer to all the DevC++ fans. I like the interface of the MinGW Studio IDE very much, and it loads fast and runs fast. MinGW Studio also uses MinGW port of gcc as the back-end compiler and has good integration with wxWidgets SDK. Both DevC++ and MinGW support slightly older versions of gcc, which forces the users to compile gcc from the source if they want to use a more later version of it. The biggest factor that goes against this IDE is that the development of MinGW Studio is almost like having stopped. It seems like ages since the last useful feature was added to this product, though it is still good enough for light-weight C++ development. I have used it on both Windows and GNU/Linux and it works the same way on both the platforms(though it remains a secret why someone would use it on GNU/Linux platform).

More Information
Screenshots: Windows and GNU/Linux

3. GNU Emacs and XEmacs

Using Emacs as an IDE for C++ development is only for those who already know how to use emacs; otherwise it entails considerable investment in learning how to use the emacs editor(the effort will more than get paid off in the end). People coming from *nix background feel right at home using emacs for C++ development, but it is not a natural choice for those who have only Windows background with them. Remember that the achievable productivity levels with the emacs editor(for development with standard C++, not platform specific extensions) is comparable to that of Visual Studio and Eclipse IDEs, if not higher. XEmacs is a variant of GNU Emacs that is very popular on Windows.

More Information: GNU Emacs & XEmacs
Download GNU Emacs
Download XEmacs

4. Microsoft Visual C++ 2005

Visual C++ 2005 Express Edition Screenshot
Microsoft has come a long way with its support for C++ Standard since the Visual C++ 6.0 version of its popular IDE. Visual Studio 2005/Visual C++ 2005 Express Edition support the C++ Standard as good as any other popular C++ compiler and allows, to a large extent, developing pure C++ applications without bothering with Windows specific extensions. The new versions of the IDE also support keyboard commands for most of the operations, which means the usage of the mouse can be minimized by those seeking to be productive. The cost of the IDE has also come down for those who need a basic C++ IDE with no extra support for Windows specific extensions – the Express Edition is totally free of cost and Microsoft claims that it will remain to be free forever.

Visual C++ 2005 Express Edition:
Feature Tour

5. Eclipse for C++ with CDT

Eclipse for C++ IDE is becoming the #1 choice for the C++ programmers as the support for this language keeps on increasing with improvements in the CDT plugin. Eclipse can be used on GNU/Linux platform too; on Windows, one needs to have gcc already installed on the system(say, MingW gcc port). Then installing Eclipse along with CDT plugin will get you ready to go. The only glitch here is that the integration between the installed gcc package and Eclipse doesn’t go smoothly for everyone(in my observation). An integrated package of [gcc port + Eclipse + CDT] should be very helpful in this case. Programmers need to write their own build scripts(eg. Makefile) to build the C++ programs in Eclipse for C++. In the long term, Eclipse for C++ should become increasingly appealing for C++ development on Windows.

More Information
Download EasyEclipse for C++

6. Code::Blocks

Code::Blocks C++ IDE Screenshot
My first choice for a light-weight C++ development environment has changed from MinGW Studio to Code::Blocks IDE in the last year. Like MinGW Studio, Code::Blocks IDE also loads and runs at good speed, uses MinGW as back-end compiler and its interface is also to my liking. Where Code::Blocks scores over MinGW Studio is the amount of development that is taking for this product: new code is added almost on a daily basis. Code::Blocks can also be used under GNU/Linux operating system.

More Information

There are other excellent editors available that allow developing software in C++ language – like SciTE, notepad2, notepad++ etc. – but none of them support direct support to build the entire application from one place. Drop in a word if you have some other development environment for developing C++ applications that is not listed here as your favourite one under the Windows operating system.


  1. NetBeans with C/C++ pack (Runs on Windows, MacOS, Linux, Solaris):


    Screenshot: http://www.netbeans.org/images/v5/product-pages/nb-cc.png


    Comment by Jose — January 2, 2007 @ 11:33 pm

  2. Thanks for reminding me about the C++ support added recently to the NetBeans IDE. I will try to make a separate post on development with C++ language using the NetBeans IDE.


    Comment by tabrez — January 3, 2007 @ 8:53 pm

  3. Borland Developer Studio 2006 and Turbo C++ (2006) are also viable alternatives

    see http://www.codegear.com/


    Comment by Delphite — January 4, 2007 @ 2:43 pm

  4. And soon my favourite IDE – KDevelop – will also be available not only on Linux but also on Mac OS X and Windows.


    Comment by Tsiolkovsky — September 19, 2007 @ 7:47 pm

  5. A port of KDevelop to the Windows and Mac OS will be very helpful in developing Qt based applications on these platforms. But I have never been a big fan of KDevelop even on GNU/Linux for writing non-QT C++ code. Instead of trying to make the life of C++ programmers more and more easy(e.g. better integration with build tools), the KDevelop developers keep working on new language extensions. Who would want to do serious Java development in KDevelop and MonoDevelop? After the success of Eclipse, everybody now wants to support every language created on the planet: Netbeans, IntelliJ IDEA, KDevelop – you name it.


    Artice Source Here

Put Your C# Program in the System Tray With Icons,MSGs and Windows

Your C# program in the system tray:

note:This post isn’t by me, main source here

When creating desktop applications it is sometimes necessary for the application to run in the background, for example firewall, anti-virus and media player software. Instead of permanently taking up space in your taskbar these applications are accessible from the system tray.

This tutorial will show you how to do this in a C# application using Microsoft Visual Studio. I will also show you how to add a right click context menu to the tray icon and how to programmatically change the tray icon.

1) The Notify Icon Control

The control used to make an icon appear in the system tray is a NotifyIcon control. So go ahead and make a new project. Open up the Visual Studio Toolbox and drag a NotifyIcon onto your form. The control will named notifyIcon1 by default and placed below the form because it has no visual representation on the form itself.

NotifyIcon Control

Next set the Text property on the NotifyIcon to whatever you want appear when you hover over your icon in the system tray. In this case I just put “System Tray Demo” but usually this would be the name of your application.

Next you need to set the Icon property on the NotifyIcon. You should really make a unique icon for your program to set it apart from the many other applications that often run in the system tray. In this example I’m going to use an email icon (you’ll see why later when we change the icons). So go ahead and choose it.

NotifyIcon Properties

Note: When I say choose an icon file i don’t just mean any image format. I mean a .ico file. Many image editing applications allow you to save in this format. If you don’t have such an application you can use a website such as www.favicon.cc to generate one.

2) Events

Now time for some coding. In this example our program will minimize to the tray but you can do the same thing for other events such as the window closing etc.

In MS Visual Studio click on your form (in design mode). Then in the properties box click on the small lightning icon (Events) near the top of the properties box. Scroll down to the “Layout” sub-heading and double click on the Resize event. This will generate some code which should look a bit like this.

private void Form1_Resize(object sender, EventArgs e)


Next add the following code so that when the window is minimized it will be hidden and not shown in the taskbar.

private void Form1_Resize(object sender, EventArgs e)
if (WindowState == FormWindowState.Minimized)
this.ShowInTaskbar = false;

Now before you get too excited and try and run the program remember we need to be able to show the window again. To do this click on notifyIcon1 (in design mode) then go to its events list (same as above) and double click on the DoubleClick event. Then add the following code so the window will be restored when the system tray icon is double clicked.

private void notifyIcon1_DoubleClick(object sender, EventArgs e)
this.WindowState = FormWindowState.Normal;
this.ShowInTaskbar = true;

Now you can try out your program. Run it and make sure it is hidden when you click the minimize button and it can be restored when you double click the system tray icon.

System Tray Icon

3) Right Click Context Menu

To make it easy to access your application from the system tray the next thing we will add is a right click context menu. To do this go to the Visual Studio Toolbox and drag a ContextMenuStrip control onto your form. It will be placed below the form again as it has no visual representation on the form itself.

Right click on the contextMenuStrip1 and click “Edit Items…”. Add two Menu Items and change their Text properties to “Show” and “Exit”. Obviously in your own application you can add whatever you want here.

Context Menu Items

When you click on contextMenuStrip1 (in design mode) you should see the menu appear on your form. Don’t worry it won’t actually be there when you run your application. As before double click on the items to create an event for them. For the Show item we just need to copy the code from the notifyIcon1_DoubleClick method we made above. You should have something like this.

private void toolStripMenuItem1_Click(object sender, EventArgs e)
this.WindowState = FormWindowState.Normal;
this.ShowInTaskbar = true;

For the Exit item all we need to do is call the Close() method.

private void toolStripMenuItem2_Click(object sender, EventArgs e)

The last step is to set the NotifyIcon control’s ContextMenuStrip property to our new context menu. Do this the same way you set other properties. The name of our context menu should appear in the dropdown box.

Notify Icons Context Menu Strip

Run your application and you should get something like this when you right click on the system tray icon.

Right Click Context Menu

4) Changing the Icon

In some applications the system tray icon might change to reflect the status of the application. For example the AVG Antivirus icon changes when your virus database is out of date. In this example imagine we have an email checking application. We have already set the normal icon, but what if we have new mail? We might want a different icon to show that we have new mail.

To do this right click on your Project in the Visual Studio Solution Explorer. Then go to “Add -> Existing Item…”. Add any icons you want to add. In this example I am adding three icons: normalIcon.ico, workingIcon.ico and newmailIcon.ico. You should see your icons in the solution explorer.

Solution Explorer

Next you must set the Build Action properties of all your icons to Embedded Resource. If you don’t do this it won’t work. Setting properties is just like above.

Now changing your icons is actually quite easy. All you have to do is programmatically set your icons. For example.

public void checkMail()
//Set a working icon
this.notifyIcon1.Icon = new Icon(GetType(), "workingIcon.ico");
//... do some checking here...

//if you have new mail
this.notifyIcon1.Icon = new Icon(GetType(), "newmailIcon.ico");
//else reset the icon
this.notifyIcon1.Icon = new Icon(GetType(), "normalIcon.ico");

It should look something like this when it’s working.

Changing Icons


In this tutorial we have looked at putting your C# program in the system tray, adding a context menu to the tray icon and programmatically changing the tray icon. Any comments and suggestions you have are always appreciated.

Configure Eclipse to work with C++ and QT

Hi All ,

I Just wanted to provide a guide tutorial to help you for the start up configuration to write GUI apps in C++ using QT library and Eclipse IDE.


Thses configurations done using : eclipse ganymede SR1 and OpenSource QT 4.4.3 . You can Map it easly for any other version .


Step1: Setup Eclipse To Be a C++ IDE Envieonment

– download eclipse here

– inside Eclipse

— Go to help menu and choose softwareupdates

— select Eclipse C/C++ development platform / tools


— This Step is to Install and configure The CDT (C/C++ Development Tools). The CDT is Nedded to provides a fully functional C and C++ IDE for the Eclipse platform .

Click update and wait for installation to finish.

— after finishing , you may restart your PC if u asked to do so.

Step2 : QT configuration

1- download QT , here

2- install it and during installation you may be asked to install MinGW (gcc),this is the C/C++ compiler. Download and nstall it if you already don’t have it installed.

3- build it . Go to start Menu and choose QT > QT command prompt

– write the command “configure” and press Enter .

– Wait for the configuration process to be done. (don’t be in hurry , it takes 15-30 minutes).

– after finish ,you will be informed that Qt is configured for building and asked to write the command “mingw32-make” to build it.

– Wait for the building process , it takes about 1-2 hours according to your PC capabilities.

after finish , close the command Prompt.

Now , You have a fully functional C++ IDE (Eclipse ) and you may Test the configuration by starting a new c++ project and compile and run it .

You also Have the QT library installed and built.

step3: integrate QT with Eclipse

1- download QT Eclipse integration here

2- install it in your System and during installation you will be asked to set the Eclipse path . Browse the file system and select the eclipse path in ur hard drive.

3- To start working , open QT eclipse integration from the path you installed it or from start menu > all programs >QT Eclipse integration and choose

start Eclipse with MinGW


Inside Eclipse , click File menu > New > other ( or press CTRL + N) and select QT as the project type and start



click Next .. and start coding 😉 .

Any correction are welcomed.

good luck

Time Delay C#

If you want to make a time delay in C# (Pause your program for any purpose) you may use this line


and if you have a problem with the interface or controls update you may need to add this small line


good luck