I've been developing console applications using C/C++. I now want to move on and create some GUI applications. For that i saw some libraries to create GUI. I think those libraries are OS dependent.

How can we create GUI applications compatible with Linux, Windows and Mac, or is it even possible.

If not possible, when we develop an application to run on Windows and we want to change it to run on Linux what portion of the application must be changed?

I want to hear some books about Linux C programming and GUI.

Thanks.

Thanks for the links. I need some quality books to start. Any idea?

I know that qt and gtk+ provide extensive documentation...plus you'll find numerous tutorials on the internet.