Need help choosing a C++ development tool set - TIA for responses :)

J

Jed

Hello to all!


I have a couple of projects I intend starting on, and was wondering if
someone here could make a suggestion for a good compiler and development
environment.

My goals are as follows:

1. Develop the project code on XP.
2. Develop the project to run on Linux, XP, and 98SE/WinME.
(Later for porting to MacOS)
3. Develop the project to have a "common look and feel" between
platforms.

My requirements are as follows:
1. I need a compiler and development environment that is free and
unrestrictive with respect to liscensing and royalties.

2. I need graphics tool kit that is cross platform, and also free.

3. I also want to be able to target multiple OSes for the same processor
type.

Any advice is welcome. Primarily, I don't have the income to purchase
tools. And I want a development tool set that isn't tied to Microsoft's
OS, or their frameworks. I don't understand their liscensing and am
pretty sure their software comes with a bunch of restrictions I don't
want to have to deal with.

I've been doing some research, and currently have downloaded Mars,
Watcom, and am trying to figure out what I need to download MinGW.

I would like to use the Gnome toolkit, but haven't been able to figure
out if it works with windows. My primary development platform is
Windows, but I am going to set up a Linux Box specifically for
simultaneous development and testing.

The projects I want to develop I will be placing (another thing I will
need advice on) in the open source community. At least I hope to. The
projects will be "beg-ware" in the hopes of turning a buck. They will
also serve to provide me with tools that I can use.

I don't plan on doing DOTNET. I know it's the hot thing, but I have
recently developed mis-givings about it.

Thanks for any help.

Peace,

Jed
 
V

Victor Bazarov

Jed said:
I have a couple of projects I intend starting on, and was wondering if
someone here could make a suggestion for a good compiler and
development environment.

My goals are as follows:

1. Develop the project code on XP.

Visual C++ Professional.
2. Develop the project to run on Linux, XP, and 98SE/WinME.
(Later for porting to MacOS)

Well, on Linux, with some porting, you can use g++ to compile. At
this point in time both compilers are quite decent (and on par as
to standard compliance, I'd say).
3. Develop the project to have a "common look and feel" between
platforms.

I would recommend against it. It is better to have the look and
feel common between applications on the same platform than between
platforms. Or do you foresee users working in your application on
more than one platform within a couple of days? Even then, it is
easier to look at something on Windows that looks like Windows, and
not like Aqua or Motif (and vice versa).
My requirements are as follows:
1. I need a compiler and development environment that is free and
unrestrictive with respect to liscensing and royalties.

Microsoft isn't free, but it's not very expensive. You can also use
MinGW, and use Dev-C++, but it pales in comparison (or maybe I am
just too used to VC++).
2. I need graphics tool kit that is cross platform, and also free.

Qt is free for non-commercial use. If you intend to sell your stuff,
though, you need to get a commercial license from them. But it is
worth every penny.
3. I also want to be able to target multiple OSes for the same
processor type.

How would that matter? Are you going to program in Assembly?
Any advice is welcome. Primarily, I don't have the income to purchase
tools. And I want a development tool set that isn't tied to
Microsoft's OS, or their frameworks. I don't understand their
liscensing and am pretty sure their software comes with a bunch of
restrictions I don't want to have to deal with.

There is nothing overly restrictive there. And if you don't have
any money now, borrow. A good set of tools is important.
I've been doing some research, and currently have downloaded Mars,
Watcom, and am trying to figure out what I need to download MinGW.

I would like to use the Gnome toolkit, but haven't been able to figure
out if it works with windows. My primary development platform is
Windows, but I am going to set up a Linux Box specifically for
simultaneous development and testing.

Get Qt. You're not going to regret it.
The projects I want to develop I will be placing (another thing I will
need advice on) in the open source community. At least I hope to.

Well, take a look at SourceForge (is that what it's called?), talk to
them, see how (and with what) they program.
The projects will be "beg-ware" in the hopes of turning a buck. They
will also serve to provide me with tools that I can use.

Well, think of it. You cannot start delivering pizzas on a bicycle,
hoping to earn some day enough money to buy a car. Your pizzas will
get so cold you'll have to pay your customers to eat them. You just
need to buy a car to get around and deliver on time.
I don't plan on doing DOTNET. I know it's the hot thing, but I have
recently developed mis-givings about it.

You don't have to do anything DOTNET, but you can still use MS tools,
they are among the best in the biz when it comes to development in C++
on Windows.

V
 
J

Jed

Jed wrote: ....

Visual C++ Professional.

Well, on Linux, with some porting, you can use g++ to compile. At
this point in time both compilers are quite decent (and on par as
to standard compliance, I'd say).
I was wondering if g++ was a C++ compiler. Hummm... I won't rule VC++
out. But, it has some quirks (at least when I was attempting to learn to
use it a few years ago [VC++ 6 educational version].
....
I would recommend against it. It is better to have the look and
feel common between applications on the same platform than between
platforms. Or do you foresee users working in your application on
more than one platform within a couple of days? Even then, it is
easier to look at something on Windows that looks like Windows, and
not like Aqua or Motif (and vice versa).
Good point. Thank you! :)

Ultimately, I want to develop using a common graphics tool kit so I can
minimize the issues when porting from Win to Linux, and ultimately beyond.
....
Microsoft isn't free, but it's not very expensive. You can also use
MinGW, and use Dev-C++, but it pales in comparison (or maybe I am
just too used to VC++).


Qt is free for non-commercial use. If you intend to sell your stuff,
though, you need to get a commercial license from them. But it is
worth every penny.

Thanks I'll look into it. Its been a while since I've looked at these
things, and I forgot about Trolltech.
How would that matter? Are you going to program in Assembly?
I may do some "optimization" as I can figure it out, but that's not the
primary reason. I figure the multiple target approach is better to selling
an app than writing for one os. So I want to develop a useful app that
someone who runs Windows, Linux and Mac in the same shop will want. If the
app is useful (performs some commonly needed function) and works the same
way over several systems, then I have wider potential revenue streams.
....

There is nothing overly restrictive there. And if you don't have
any money now, borrow. A good set of tools is important.
I agree with you that good set of tools is important, ergo the question.
Thank you for the advice, and I am considering it. But let me ask you a
couple of questions: You recommend VC++. Are you talking the the version
6 edition, or the .NET addition? And why not Borland C++ Builder? And
what about g++? Have you used it? You prefer Qt. Have you used Gnome
Tool Kit? (and is that available for windows?)

Sorry to ask so many questions but I am trying to make the most economical
and informed choices I can. And I figure you guys in here have the
experience.

....
Well, take a look at SourceForge (is that what it's called?), talk to
them, see how (and with what) they program.
Good Idea!
Well, think of it. You cannot start delivering pizzas on a bicycle,
hoping to earn some day enough money to buy a car. Your pizzas will
get so cold you'll have to pay your customers to eat them. You just
need to buy a car to get around and deliver on time.
hehe... I used to deliver pizza. Of course I did it in a $50.00 car. So I
made my money back. hehehe... :)
You don't have to do anything DOTNET, but you can still use MS tools,
they are among the best in the biz when it comes to development in C++
on Windows.

V
And can I develop on them cross-platform?

Thanks for taking the time to respond Victor. I will definitely consider
the options you've mentioned.

Peace,

Jed
 
J

Jed

....

And the only CRT libs (C runtime library) are static. You have to buy
Visual Studio for the DLL import libraries for the CRT. It's not
important for small projects, academic work, etc., but for large
projects, it's a real show-stopper.

To clarify: I intend to develop the bulk of my application processing
code in standard C++. I want a cross-platform graphics toolkit that I
can develop the application's output in. Some of the apps will not need
printing capability.

Can I do this with VC++ (the version mentioned above)?

Peace,

Jed
 
J

Jed

One option would be to use VC++ for development.

A good cross platform GUI solution is wxWindows:

http://www.wxwindows.org/

Wow... thanks man!

Just went to the link and looked at it. Very cool...

I take it that it is not free? Not seeing anything about that anywhere on
their site..

Thanks!

Peace,

Jed
 
D

Duane Hebert

I take it that it is not free? Not seeing anything about that anywhere on
their site..

With Qt4 Trolltech has released an open source version for
Windows, as well as Linux. I think the windows version only
runs with Cygwin though. It's a good product, although a bit
expensive for the commercial version if you're a single
developer.
 
V

Victor Bazarov

Jed said:
[...] Hummm... I won't rule
VC++ out. But, it has some quirks (at least when I was attempting to
learn to use it a few years ago [VC++ 6 educational version].

Oh, forget VC++ 6. It's older than my car (and that one has 100K miles
on it already), and definitely not worth using for any serious project
unless you have to (like you have libraries that don't work with later
versions of VC++). Get 7.1 or 8.0 (when it comes out later this year).
...
I agree with you that good set of tools is important, ergo the
question. Thank you for the advice, and I am considering it. But let
me ask you a couple of questions: You recommend VC++. Are you
talking the the version 6 edition, or the .NET addition?

I cannot recommend you version 6 simply because to get it from MS you'd
need to get v7.1 first, and that's what you really should be using. If
you extend your contemplation for a month or two, v8.0 will be out and
you should get that instead.
And why not
Borland C++ Builder?

I can't recommend it because it's been a while since I used it and even
then it fell short of my expectations of it.
And what about g++?

Having to do everything manually is a chore, although it would help you
keeping the projects in synch across platforms. VC++ is a system that
helps you organise your projects easier.
Have you used it?

Not on Windows, I haven't.
You
prefer Qt.

It's one of the most widely used toolkit in the industry.
Have you used Gnome Tool Kit? (and is that available for
windows?)

I don't know whether it's available on Windows, and it might not be.
And, no, I haven't used it.
Sorry to ask so many questions but I am trying to make the most
economical and informed choices I can. And I figure you guys in here
have the experience.

Don't dismiss newsgroups where they talk about operating systems as
another good source of information. This after all is a _language_
newsgroup, and not really a software development newsgroup. Try also
comp.software-eng.
...
And can I develop on them cross-platform?

Sure. That's what I do. And that's what my colleagues do. I do it
on Windows, they do it on Linux or HP-UX or...

V
 
V

Victor Bazarov

Jed said:

Well, it's free, but absence of a debugger (and the IDE) is a bummer.
Perhaps I am biased (or spoiled) because I've been using QuickC and
Visual C++ for more than a decade, and they come with all you need, but
you gotta buy those amenities. To have a debugger really takes the
prize. Inserting printf's all over code just to see what's going on
is not only tedious, it changes the behaviour of the code, and therefore
you don't get the right picture... Of course you could try using some
other debugger... If you can find something decent, that is.

Of course if you can switch from developing on XP to developing under
Linux, you will have access to tons of free tools.

V
 
S

Sherm Pendley

Duane Hebert said:
With Qt4 Trolltech has released an open source version for
Windows, as well as Linux.

He was asking about wxWindows, not Qt.
I think the windows version only runs with Cygwin though.

The commercial version of Qt works with VC++.
It's a good product, although a bit
expensive for the commercial version if you're a single
developer.

A bit? According to Trolltech's pricing page, a single-user license for
developing a cross-platform (Windows/Linux/Mac) app begins at $3560USD -
and that's *without* the GUI library. If you want a GUI, it's $3980. If
you want OpenGL, database access, or XML, the price becomes $6600.

Qt is definitely a good product - I'd use it for a cross-platform open
source project in a heartbeat. But the pricing for the commercial version
is way out of range for a single developer, or even a small company.

sherm--
 
S

Sherm Pendley

Jed said:
Just went to the link and looked at it. Very cool...

I take it that it is not free? Not seeing anything about that anywhere on
their site..

There's a licensing page in the "Documentation" section. It's basically a
slightly modified LGPL license.

sherm--
 
B

BobR

Jed wrote in message ...
To clarify: I intend to develop the bulk of my application processing
code in standard C++. I want a cross-platform graphics toolkit that I
can develop the application's output in. Some of the apps will not need
printing capability.

You want GCC (MinGW on window$) and wxWidgets.

Dev-C++ IDE: http://www.bloodshed.net/ (default==MinGW GCC)
[ ...and it comes with a debugger, gdb, and library. ]

wxWidgets URL: http://www.wxwidgets.org
[ both cost == $(download) ]
Can I do this with VC++ (the version mentioned above)?
Peace,
Jed

Will VC++ run on a GNU/Linux OS? Or a Mac OS?

[see my post in *.moderated, when it shows up tomorrow.<G>]
--
Bob R
POVrookie
--
MinGW (GNU compiler): http://www.mingw.org/
MinGWStudio http://www.parinyasoft.com/
V IDE & V GUI: http://www.objectcentral.com/
Quincy IDE 2005 URL: http://pipou.net/down/Quincy2005Project.zip
POVray: http://www.povray.org/
alt.comp.lang.learn.c-c++ faq:
http://www.comeaucomputing.com/learn/faq/
 
S

Sherm Pendley

BobR said:
Will VC++ run on a GNU/Linux OS? Or a Mac OS?

Obviously not, but who cares? Use VC++ on Windows, Xcode on Mac OS X, and
whatever on Linux.

sherm--
 
B

BobR

Sherm Pendley wrote in message ...
Obviously not, but who cares?

Someone who is developing on all three systems!
Use VC++ on Windows, Xcode on Mac OS X, and
whatever on Linux.

Or, GCC for all. No $. Why learn a new compiler for each system?

(...and that's 'GNU/Linux' or 'GNU'. 'Linux' is a kernel for the 'GNU'
OS.<G>)
www.gnu.org

The choice is yours. Please make it an *informed* choice. :-}
[ Note: It's not 'either/or', you can put *all* the compilers on your
machine. ]
 
M

Mirek Fidler

Jed said:
Hello to all!


I have a couple of projects I intend starting on, and was wondering if
someone here could make a suggestion for a good compiler and development
environment.

My goals are as follows:

1. Develop the project code on XP.
2. Develop the project to run on Linux, XP, and 98SE/WinME.
(Later for porting to MacOS)
3. Develop the project to have a "common look and feel" between
platforms.

My requirements are as follows:
1. I need a compiler and development environment that is free and
unrestrictive with respect to liscensing and royalties.

2. I need graphics tool kit that is cross platform, and also free.

3. I also want to be able to target multiple OSes for the same processor
type.

See http://upp.sf.net

Mirek
 
S

Sherm Pendley

BobR said:
Sherm Pendley wrote in message ...
Or, GCC for all. No $.

VC++'s "Express" editions are $cheap - the final release will be priced at
$49US. And the current beta releases are $free. Xcode is a free download,
and uses GCC under the hood anyway.
Why learn a new compiler for each system?

Why not? It's hardly rocket science, and by any objective measure I'm aware
of, VC++ produces better code than GCC - albeit only for the one platform for
which it produces any code at all. ;-\.
The choice is yours. Please make it an *informed* choice. :-}

Exactly. Instead of choosing out of a misguided religious attachment to a
single platform, take some time to inform yourself as to the relative merits
of each. Then for each platform choose the compiler that produces the best
results for it.

sherm--
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,787
Messages
2,569,631
Members
45,338
Latest member
41Pearline46

Latest Threads

Top