I think you're confusing two things. An IDE is a kind of tool for developing software, either console-based or graphical; a graphical program can be developed either with an IDE or without.
An IDE is a kind of text editor which, usually integrated with a specific toolset, for example Visual Studio with .NET and stuff, or NetBeans with Java; and with IDEs you can usually make both command-line (console-based) and GUI (graphical) programs.
GUI development is not a standard part of C++, so you will need to rely on a library (GUI libraries are usually called frameworks, because they're fairly complicated, and often have tools of their own).
If you want to learn GUI development for Linux (and across other platforms) I recommend Qt. Qt is a good C++ GUI framework that works, and integrates well graphically with Windows, OS X, and GNOME, KDE and virtually all other desktops on Linux. Qt has its own IDE too, Qt Creator.
I learned Qt from the book C++ GUI Programming with Qt 4 (http://www.amazon.com/C-GUI-Programming-Qt-4/dp/0131872494). But that book is a bit outdated. Qt has a page on learning: http://qt-project.org/doc/qt-4.8/how-to-learn-qt.html.
For a Linux IDE, I recommend Geany if you use GNOME or another GTK-based desktop (XFCE, Enlightenment,...) or Kate if you use KDE.