msvc8.0 support?

OCCD News ( stated that MSVC 2005 supported.
Installed latest OpenCASCADE6.2.0, opened samples\standard\mfc\All\all.vcproj (still vc7.1) and got 52 compilation errors, 75 warnings.
Some of which is pretty strange:
C4717: recursive on all control paths, function will cause runtime stack overflow (occ_2dviewrd.cpp, line 60)

void OCC_2dViewRD::OnFileExportImage()
What kind of function is that?

All binaries still linked with vc7.1
How rebuild pack for vc8?

Mikael Aronsson's picture

Well, if the method look's like that then the compiler is correct, isn't it ;o)

I guess you have two choices, you can fix the error's yourself or you can wait until OCC has been updated to work with VC 8, it hasn't been out very long so I guess you will have to wait a while or stick with VC 7 until then.

You should not expect any rapid movement here, the free version is not updated very often, if you are a paying customer it's a different thing I guess.

Gennady Khokhorin's picture

Weird thing I can not install pack on machine with vc7.1, InstallShield just dissapered after "Preparing Java VM" dialog box.
Mikael, do you know what else besides creating 17 System variables setupWindows.exe doing?

Joe's picture

I do not run the JavaVM on my development box - the install appears to only require the Java Virtual Machine for setting environment vars and some registry entries...

I simply copied the OCC directory and edited a bat file for the needed environment vars (use CMD SET command or Computer Properties... to obtain) and copied any OCC registry entries onto my devel box and it seems to work... [it didn't take long, so I think it worked first try, I'll have to check to see if I have copies..]

I also am running OCC on VS 2008 Beta (release versions are available @ - I do recall making some minor corrections for the loop vars (as mentioned) - I believe I hand fixed several and then simply searched for a compiler switch (most legacy warnings/errors are toggleable).

I downloaded OCC last summer and haven't spent more than about 3 hours with it (just got on here to see if its been upgraded). I noticed its C# support was weak, but I did get it working with C#... noticed some posts on this forum regarding C# I might read. C++ is no problem for me, but I have been doing a lot with C# in recent years.

Hesham Nasif's picture

Dear Joe

I already made a wrapper for Net because i also use C#, the wrapper is working fine on a machine with OCC installed, do you have an idea how to deploy the applications for other machine with no occ

Paul Camilleri's picture

For OpenCASCADE version 6.2 I importeded all the VC7 solution files to VC8+SP1 without any problems apart from a small number of minor errors in the source files like:

for(int i=0;i<5;++) { ... }
for(i=0;i<5;i++) { ... }

VC8 considers "i" in the first loop as going out of scope and is therefore undefined in the second loop.

I then built debug and release versions of the whole library without a hitch along with all the examples and they work just fine.

I also compiled the whole library for debug and release from the command line using the .MAK files proided with no problems apart from the fact that the manifest files are generated seperately.

P Dolbey's picture

There's a simpler method; see

You may need to reconvert your 2003 projects to 2005


Gennady Khokhorin's picture

I'm saying it is not msvc version issue but obvious basic cpp errors (example above)

P Dolbey's picture

I have both a vanilla and tweaked source code tree for Open Cascade. In my teaked version I just commented out the line to make it compile. However its actually on line 35 not 60 in my source.

However, I suspect that


should really read


i.e. call the parent class function first to do the real work, then show the function source code. The same pattern, and therefore error, can be seen in all the functions in the class - funny its not really been noticed before !!!! I haven't tested this option, but I don't do much with MFC these days.