Game Development Community

Compile Problems - Win and Mac

by Steve Lamperti · in Torque Game Engine · 08/20/2003 (1:24 pm) · 5 replies

I just bought torque, and am trying to get it up and running. I am running into a couple of compiler errors.

On windows (XP, using VC++ .net) I am seeing

Error C2660: 'std::vector<_Ty>:: assign':function does not take one argument

in DTSMesh.cpp and DTSShape.cpp.

On the Mac (OS x 10.2.6, codewarrior 8) I am seeing

Error Illegal 'operator' declaration

in platform.h.

If someone could point me in the right direction to fix these problems, I would appreciate it.


Thanks

-Steve Lamperti

#1
08/23/2003 (12:19 pm)
Steve, I tried to go to VS.NET for Torque, but I could never get it to compile either, so I went back to VS6.0

For your first question, there's something different (naturally) in the STL library between VS6 and VS.NET. What I had to do (and I found a link for it in these forums somewhere) was to specify the default object constructor as the second parameter to the assign method..

ie. assign(numPoint) now becomes assign(numPoint, Point())

etc.

There's a crap load of them to modify, and then I ran into some other insidious STL problems with osstream (which led me back to using VS6.0...*grin*)

hth, and good luck!
#2
08/23/2003 (5:39 pm)
I've been succesfully compiling with VC7 all summer. I've not been doing Managed C++, of course.

Are you compiling the torque engine or one of the tools?
#3
08/23/2003 (5:55 pm)
I thought Rick tossed in the VC7 .NET changes into HEAD some time ago....
Have to take a look, I have been using VC7 .NET 2002 and 2003 for the most part as well with no issues

-Ron
#4
08/23/2003 (9:30 pm)
(And as far as that goes, there's some really heinous snafus in VC6... Look at the end of HEAD console.h to see the kind of hoops you have to jump through for it.)
#5
08/25/2003 (9:12 am)
Thanks for your comments guys, I found the following article in code snippets, that seems to have corrected my compile problem on VS 7.

(Maybe someone should look into moving this change into the code?)

I'm still having a problem compiling on the mac, but I posted that in the mac section, and hopefully someone will have a suggestion there.

Thanks again,


Article:
To get max2dtsExporter Max3 to build, go to file materialList.h. On line 69 and 70, you see:
typedef Vector::iterator iterator;
typedef Vector::value_type value;
Cut these lines and move them before the class definition (say, to line 20).
With this fix, max2dtsExporter Max3 will build. max2dtsExporter Max4 builds with a number of warnings, but it doesn't appear fatal.