Low Cost Commercial Compiler?

closed account (EAUX92yv)
I know that one of the most used compilers for commercial apps is Visual Studio. However, I don't want to have to buy a very expensive developer tool if I don't know my apps will make money. Can anyone suggest some low price or free C++ compilers that can be used commercially without getting into legal troubles? Thanks in advance!
VC++ has a free version that works basically just as well.

Otherwise you can also grab something like gcc or clang (they are both open source I believe).
closed account (EAUX92yv)
VC++ does have a free version, but Microsoft will sue you if you release something compiled with it due to copyright and other legal issues. And sorry I didn't mention this earlier, but can either of those other compilers use OpenGL? Thanks for the response!
Ah you mean to sell commercially?

OpenGL is a library so any standards compliant compiler should work as long as you set up the library (linker settings etc) correctly.
You can use VC++ Express for commercial use.
There is a good amount of posts everywhere asking if VC Express is market safe and all of them say yes, however couldn't find exact proof (Most likely in the terms and conditions).
Last edited on
Here is part of the terms and conditions

2. ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.
Distributable Code. The software contains code that you are permitted to distribute in programs you develop if you comply with the terms below.
a. Right to Use and Distribute. The code and text files listed below are “Distributable Code.”
• REDIST.TXT Files. You may copy and distribute the object code form of code listed in REDIST.TXT files.
• Sample Code. You may modify, copy, and distribute the source and object code form of code marked as “sample.”
• Microsoft Merge Modules. You may copy and distribute the unmodified output of Microsoft Merge Modules.
• Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.
b. Distribution Requirements. For any Distributable Code you distribute, you must
• add significant primary functionality to it in your programs;
• for any Distributable Code having a filename extension of .lib, distribute only the results of running such Distributable Code through a linker with your program;
• distribute Distributable Code included in a setup program only as part of that setup program without modification;
• require distributors and external end users to agree to terms that protect it at least as much as this agreement;
• display your valid copyright notice on your programs; and
• indemnify, defend, and hold harmless Microsoft from any claims, including attorneys’ fees, related to the distribution or use of your programs.
c. Distribution Restrictions. You may not
• alter any copyright, trademark or patent notice in the Distributable Code;
• use Microsoft’s trademarks in your programs’ names or in a way that suggests your programs come from or are endorsed by Microsoft;
• distribute Distributable Code to run on a platform other than Microsoft operating systems, run-time technologies, or application platforms;
• include Distributable Code in malicious, deceptive or unlawful programs; or
• modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that
• the code be disclosed or distributed in source code form; or
• others have the right to modify it.



Huh, that's strange:
distribute Distributable Code to run on a platform other than Microsoft operating systems, run-time technologies, or application platforms;

Ok, I guess that means no mac or linux compatibilities? Otherwise it looks fine.
Last edited on
VC++ does have a free version, but Microsoft will sue you if you release something compiled with it due to copyright and other legal issues.


Where are you getting your (false) information?
The software contains code that you are permitted to distribute in programs you develop if you comply with the terms below.


None of that pertains to code you develop.
If you are a full time student, you can get Visual Studio Professional for free through Microsoft's Dream Spark program.

Personally, I would pass on using Visual Studio unless your working with .NET.

If I were to pay money for a compiler, it would intel's compiler.

Otherwise just use clang or GCC.

Last edited on
closed account (o1vk4iN6)
Even though dream spark quite clearly states that the programs should be used for learning purposes only, exact opposite of what he wants.

I wouldn't pay money for a compiler when there is clang and GCC.
closed account (1yR4jE8b)
You aren't paying for the compiler when you buy Visual Studio, you are paying for the IDE and all of the developer tools that come with it. You can get just the compiler for free from Microsoft.


Personally, I would pass on using Visual Studio unless your working with .NET.


From my experience, there is no C++ IDE that even *comes close* to what you get with Visual Studio. There are plenty of reasons to use Visual Studio that make it worth the money and have nothing to do with the compiler -- which you can get for free and use from the command prompt if you really want to.

I have an MSDN subscription, *and* I buy licenses for Intel's compiler which they also integrate into Visual Studio. It's the best of both worlds.

Otherwise just use clang or GCC.


Clang isn't easy to get working on Windows yet, and I doubt it ever will. GCC is a decent choice, but again, the tooling available for it on Windows is poor.
You aren't paying for the compiler when you buy Visual Studio, you are paying for the IDE and all of the developer tools that come with it. You can get just the compiler for free from Microsoft.


Visual Studio Express is the IDE bundled with the compiler minus some features/tools.

And it's free.
closed account (EAUX92yv)
Where are you getting your (false) information?


I've read it in Wikihow and when you start VS Express, it says that it's only for evaluation purposes. Also, by all that's been said, do you mean that I CAN compile and sell apps compiled in VC Express?
when you start VS Express, it says that it's only for evaluation purposes.

Mine doesn't. But, then, I registered mine (for free.)

I've read it in Wikihow

Then, it must be true. Checking the 7 or so pages on wikihow that deal with C++ compilers tangentially, I find no such claim.

do you mean that I CAN compile and sell apps compiled in VC Express?

What did you think I meant?
Have you managed to register your product? And does it still say "for evaluation purposes only"? See below.

I downloaded Visual Studio 2012 Express for Windows 8 Desktop but haven't managed to register yet. This is because the registration now insisted on information about a non-existent company (this copy of Visual Studio is for personal, education use only. My employers provide the commercial versions for me.) I didn't hit this problem with Visual C++ 2010. Then is was happy enough without a company.

I think the "for evaluation purposes only" will go away once I've managed to register. (EDIT: yes, it does)

Andy

EDIT: I just stuck "n/a" in all the fields I could get way with it, plus repeated a tiny bit of home info where formatting was important. The splash screen now says "This product is licensed to"
Last edited on
From my experience, there is no C++ IDE that even *comes close* to what you get with Visual Studio.

How about Eclipse?
Last edited on
closed account (3hM2Nwbp)
iseeplusplus wrote:
How about Eclipse?


If you can figure out how to use it, then sure! </sarcasm>

:)
closed account (1yR4jE8b)
Visual Studio Express is the IDE bundled with the compiler minus some features/tools.

And it's free.


And the Express version of the IDE is stripped right down and is not compatible with most of the tools that come with Professional (and up) versions. When you pay for VS professional, you are paying for that extra functionality.

How about Eclipse?


If you don't mind your IDE being slow, bloated, and broken features, then sure.

closed account (EAUX92yv)
Does the application released have to be open source or not?
closed account (3hM2Nwbp)
Does the application released have to be open source or not?


Microsoft's tools don't require your application to be open-source.



That being said, if you're using any libraries that are marked as GPL-compatible (or any viral license equivalent), then your source code is required to be distributed along with your binary. Your best bet when dealing with closed source software is to avoid using any libraries that are under viral licenses (GPL).


Personal Tip:

If you are considering releasing a serious commercial application, be sure to have a lawyer (or an army of lawyers) on speed-dial just in case.
Topic archived. No new replies allowed.