Click here to Skip to main content
11,923,046 members (62,982 online)
Rate this:
Please Sign up or sign in to vote.

i want to can write visual programs with c/c++ like adobe applications group or even like windows but i dont know how can i write and where i can do it?

is there a cross-platform IDE and compiler for c/c++ with GUI capability like microsoft visual studio?

*** i dont want to use vs.
Posted 7-Feb-13 4:23am
Edited 7-Feb-13 21:05pm
Chris Reynolds (BNY) 7-Feb-13 9:36am
Are you looking for something like GTK+ which is a cross-platform GUI toolkit?

Why don't you want to use VS? If you tell us why not it can help in pointing you to alternatives.
hor_313 7-Feb-13 9:48am
cause i want to switch to linux and other platforms like android when i want
hor_313 7-Feb-13 9:51am
i dont know about GTK+ but i am seeking for a something like vs but it is cross-platform
Chris Reynolds (BNY) 7-Feb-13 10:01am
If you're looking for a tool that offers as much built in help and support as VS does for Windows development but will build for multiple target platforms you will struggle. You need to find a GUI toolkit that is available on all the platforms that you want to develop for and then find a dev environment that supports both
hor_313 7-Feb-13 10:05am
thanks , but whats your suggest for good IDE+Compiler+GUI toolkit?
Please see my answer; it's almost comprehensive. Don't make a final decision too soon, try different things out.
Richard MacCutchan 7-Feb-13 10:04am
It is unlikely that you can do this easily since other platforms have their own GUI libraries that are not compatible with Windows. You might like to consider using Java for your development, which fits your brief better.
Nevertheless, there is a number of pretty good options. Just take a look at my answer where I list only the most well-known ones.
But you are right about Java; I would rather mention C++/CLI under Mono first — it's a really working way.
IDE and compiler, first of all, depends on your preference. So, please:
What is your preferred platform? (I guess, from your previous question, Windows, is that right?) Do you want to use C++ only, or also C++/CLI?
joshrduncan2012 7-Feb-13 11:27am
You can use Mono for your IDE that can be ported to multiple platforms. Mono is an Open Source version of Visual Studio.
Agree, but it does not even require porting. Please see my answer.
Rate this: bad
Please Sign up or sign in to vote.

Solution 1

We cannot discuss all C++ libraries, can only focus on UI development, which the the topic most difficult for cross-platform development. I also don't want to discuss anything commercial (like VCL), except Visual Studio which I guess you have.

You already know about Qt. (I answered here: is the Qt creator with its library(Qt 5) best choice for c/c++ ?[^].)

What else?

First of all, GTK+:[^],[^];
see also:[^].

Another well-known library is wxWidgets:[^],[^].

And, finally, FLTK:[^],[^].

You will probably find some more if you see Wikipedia cross-references from the pages I referenced above, but I listed the most well-known ones.

If you know or want to master C++/CLI, it would open the world of CLI and CLR to you, which is good for development on many platforms, first of all, via Mono:[^],[^].

In this approach, all your .NET application, when developed accurately and according to standards, will work on any of the platforms without recompilation. Also, you will get access to the very thorough language compatibility with all CLI languages:[^].

See also:[^],[^].

Unfortunately, the only library for UI development is System.Windows.Forms, but it's quite rich.

[EDIT #1]

But with Mono, you can also use CLI version (ports or wrappers) of GTK+, Qt and more.


On C++/CLI, please see:[^],[^],[^];
see also[^].

CLR, CLI and C++/CLI are standardized under ECMA and ISO, which is a huge plus.

[EDIT #2]

I forgot to mention IDE.

On Windows, you can develop on Visual Studio. With experience, you hopefully would be able just to rebuild the solution on Linux (not required for C++/CLI + Mono, as you can install Mono on Windows and test it all there).

However, in real life, some developing and debugging on other platform can be required. On Linux, I would recommend Anjuta:[^],[^].

In case of C++/CLI, you can use MonoDevelop, which is also available for Windows:[^],[^].

Moreover, C++/CLI UI based on GTK+ or Qt is better to develop with MonoDevelop IDE than on Visual Studio.

Also, Qt comes with its own IDE which I did not try.

I really advise you to spend some time and try all of the options to decide which you would prefer. It's really hard to give a final advice.

H.Brydon 7-Feb-13 13:24pm
Great answer (+5). Isn't there an Eclipse C++ IDE though? Also I read something about Anjuta (I used it briefly on linux but haven't tried it on Windows).
Thank you very much. Eclipse, is, basically, IDE for everything. By some reasons, I don't like Eclipse. However, maybe it's better these days...
hor_313 7-Feb-13 13:45pm
i havnt read all of them since now but i thank your effort. i am sure it'll help me
You are very welcome.
Good luck, call again.
hor_313 8-Feb-13 7:30am
if i dont like to use c++/cli and mono , which IDE is best (complete) to using for c++ ?
Define "better"... In my opinion, Visual Studio (Windows) and Anjuta (on Linux).
There can be something I don't know...
hor_313 8-Feb-13 12:35pm
with wich compiler ?
You are talking about cross-platform. So, in Windows it will be Microsoft, on Linux (or whatever else) — GCC, and you should develop the way to have the code compiled on both.
hor_313 8-Feb-13 11:50am
and i have another question : what is the difference between ToolKit and Library ?
Mostly just words, by "toolkit" is the wider concept, my suggest there also some tools/utilities...
Rate this: bad
Please Sign up or sign in to vote.

Solution 2

IDE: wxWidgets(wxDev C++)
Compiler: gcc

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month

Advertise | Privacy | Mobile
Web04 | 2.8.151125.3 | Last Updated 8 Feb 2013
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100