Future of Visual C++ 6.0 support
-
- OGRE Retired Team Member
- Posts: 19269
- Joined: Sun Oct 06, 2002 11:19 pm
- Location: Guernsey, Channel Islands
- x 66
Future of Visual C++ 6.0 support
Visual C++ 6.0 is old. Very old. It's full of bugs (internal compiler errors, scoping errors) and poor implementations (template specialisation) that have continuously caused us to add small hacks to the Ogre source and avoid using some template structures. It's a pain in the arse, and I for one am getting quite cheesed off with supporting it.
In addition, MS is dropping support for VC6 right now. DirectX 9.0c has problems with it, and MS's advice is to upgrade (unsurprisingly). They are hinting that near future versions of the platform SDK won't support it either, for the same reasons as DirectX (they say security).
What I'd like to get a view on is the number of people still using it, and what you would do if we dropped support for it at some point in the near future.
In addition, MS is dropping support for VC6 right now. DirectX 9.0c has problems with it, and MS's advice is to upgrade (unsurprisingly). They are hinting that near future versions of the platform SDK won't support it either, for the same reasons as DirectX (they say security).
What I'd like to get a view on is the number of people still using it, and what you would do if we dropped support for it at some point in the near future.
-
- OGRE Retired Moderator
- Posts: 4011
- Joined: Fri Sep 19, 2003 6:28 pm
- Location: Burgos, Spain
- x 2
-
- OGRE Retired Team Member
- Posts: 3067
- Joined: Tue Feb 10, 2004 12:53 pm
- Location: The Netherlands
- x 1
-
- Gremlin
- Posts: 150
- Joined: Wed Oct 20, 2004 2:35 pm
- Location: Paris, France
I still use VC6. It is more a habit than a real choice.
In fact, I like the IDE better than the .NET one. That's merely the main reason actually as I'am well aware that the compiler is crap.
So, even though I was tempted to answer "hunt you down", I guess I would have no choice but switch to VC7.1 or maybe VC8.
It was meant to happen someday anyhow.
In fact, I like the IDE better than the .NET one. That's merely the main reason actually as I'am well aware that the compiler is crap.
So, even though I was tempted to answer "hunt you down", I guess I would have no choice but switch to VC7.1 or maybe VC8.
It was meant to happen someday anyhow.
Banania
-
- Gremlin
- Posts: 157
- Joined: Mon Nov 11, 2002 4:21 pm
- x 3
-
- Halfling
- Posts: 81
- Joined: Sat Jun 19, 2004 1:10 am
-
- OGRE Retired Team Member
- Posts: 419
- Joined: Mon Jan 27, 2003 11:51 pm
- Location: The Woodlands, TX
Personally I'm all for getting rid of the VC 6.0 build, but I think this should be a post 1.0 thing. We've supported it this far so I think we should support it for our first major version. Post 1.0 I'm for dropping it for the development branch but keeping it for the 1.0 bugfix branch. If someone else wants to support it in the post 1.0 development branch and beyond they are perfectly welcome to do so.
Being able to use co-variant return types (as well as a few other advanced c++ features) makes me happy so I look forward to a time when we can drop VC 6.0 support.
Being able to use co-variant return types (as well as a few other advanced c++ features) makes me happy so I look forward to a time when we can drop VC 6.0 support.
-
- OGRE Retired Team Member
- Posts: 2543
- Joined: Fri Oct 24, 2003 2:53 am
- Location: San Diego, Ca
- x 2
I agree with you completely. Perhaps the next major version after 1 can stop VC6 support. Version 1 should satisfy people with VC6 for a while. And after that, they would be forced to upgrade for newer versions (or hack up the OGRE code to allow support still) - in either case it would no longer be a burden to you guys_mental_ wrote:Personally I'm all for getting rid of the VC 6.0 build, but I think this should be a post 1.0 thing. We've supported it this far so I think we should support it for our first major version. Post 1.0 I'm for dropping it for the development branch but keeping it for the 1.0 bugfix branch. If someone else wants to support it in the post 1.0 development branch and beyond they are perfectly welcome to do so.
Being able to use co-variant return types (as well as a few other advanced c++ features) makes me happy so I look forward to a time when we can drop VC 6.0 support.

Have a question about Input? Video? WGE? Come on over... http://www.wreckedgames.com/forum/
-
- Gnoblar
- Posts: 22
- Joined: Wed Oct 01, 2003 7:38 am
- Location: California
-
- OGRE Community Helper
- Posts: 1098
- Joined: Mon Sep 22, 2003 2:40 am
- Location: Melbourne, Australia
Far be it from me to disagree with the Ogre devs, but IMHO I'd suggest the exact opposite.Personally I'm all for getting rid of the VC 6.0 build, but I think this should be a post 1.0 thing. We've supported it this far so I think we should support it for our first major version.

If you're not going to support VC6 going forward, then desupporting it before you get to 1.0 seems like the sensible thing to do. Otherwise, people using VC6 are going to pick up Ogre 1.0 and then get really upset when 1.1 comes out and they're suddenly desupported. If "official" Ogre doesn't support VC6 then any separate VC6-compatible branch (if one exists) should never make it to 1.0, to save confusion.
Having said that, I think there should be an alternative and official support for DevCpp/MingW seems like the ideal candidate. Personally I use VC7.1 but I can understand that people can't afford to / don't want to fork out for this Microsoft gubbins. I'd hate to see Ogre held back because of hacks needed to support an ancient compiler, so DevCpp/MingW looks like the only reasonable way forward.
-
- Goblin
- Posts: 217
- Joined: Thu Oct 24, 2002 4:12 am
- x 1
-
- Kobold
- Posts: 33
- Joined: Sun Apr 27, 2003 6:57 pm
- Location: New York, USA
-
- Greenskin
- Posts: 147
- Joined: Mon Oct 25, 2004 5:22 am
- Location: RF
- x 1
-
- Gnoblar
- Posts: 23
- Joined: Tue Aug 31, 2004 7:50 am
-
- Gnoblar
- Posts: 22
- Joined: Wed Oct 01, 2003 7:38 am
- Location: California
-
- Goblin
- Posts: 220
- Joined: Mon May 31, 2004 5:54 am
- Location: Canada
-
- OGRE Retired Moderator
- Posts: 2653
- Joined: Wed Sep 24, 2003 8:07 am
- Location: Haute Garonne, France
- x 4
There is at least 3 paginglandscape plugin users that I know who use VC6.
(but don't seems to use forums much...)
The solution would be to find a free way to use MS free "Visual C++ Toolkit 2003" within VC6.
Some googling gives at least a 50 $ shareware that "seems" to allow so :
http://www.programmersheaven.com/zone3/cat155/36920.htm
(but don't seems to use forums much...)
The solution would be to find a free way to use MS free "Visual C++ Toolkit 2003" within VC6.
Some googling gives at least a 50 $ shareware that "seems" to allow so :
http://www.programmersheaven.com/zone3/cat155/36920.htm
-
- Gremlin
- Posts: 155
- Joined: Mon Jul 28, 2003 8:01 am
I would mutch appritiate this approach. Since i'm still using VC6 and cannot affort to upgrade so soon._mental_ wrote:Personally I'm all for getting rid of the VC 6.0 build, but I think this should be a post 1.0 thing. We've supported it this far so I think we should support it for our first major version. Post 1.0 I'm for dropping it for the development branch but keeping it for the 1.0 bugfix branch. If someone else wants to support it in the post 1.0 development branch and beyond they are perfectly welcome to do so.
Being able to use co-variant return types (as well as a few other advanced c++ features) makes me happy so I look forward to a time when we can drop VC 6.0 support.
Deamon
IMPERIAL U-FLOTILLA 1914-1918

http://www.dreadnoughtproject.org/heinrich/main.htm
Current stage: 2 - pre alpha

http://www.dreadnoughtproject.org/heinrich/main.htm
Current stage: 2 - pre alpha
-
- Greenskin
- Posts: 125
- Joined: Mon Oct 20, 2003 8:25 pm
Didn't vote as I have upgraded already, but want to give my opinion on this:
Anyway I trust the Ogre team to come up with a reasonable decision considering the sterling job they did so far...
PS: can someone shoot all the comercial vendors that buy up all the VS packages on ebay - doing that would make upgrading a lot less painful for most people
Apart from the point monster made one thing on the road to 1.0 is said to be a thorough code review - a good point to get rid of all unneccessary cruft and workarounds, So keeping VC6 only to drop it directly after 1.0 sounds like a missed chance to me.Personally I'm all for getting rid of the VC 6.0 build, but I think this should be a post 1.0 thing. We've supported it this far so I think we should support it for our first major version.
Anyway I trust the Ogre team to come up with a reasonable decision considering the sterling job they did so far...
PS: can someone shoot all the comercial vendors that buy up all the VS packages on ebay - doing that would make upgrading a lot less painful for most people

-
- OGRE Retired Team Member
- Posts: 3067
- Joined: Tue Feb 10, 2004 12:53 pm
- Location: The Netherlands
- x 1
You can use the free VC8 (with IDE!) beta (http://msdn.microsoft.com/express/) to compile OGRE (there's a topic describing exactly what you need to do), maybe that's a good hint to current VC6 users
This means you don't have to mess around with getting the free but IDE-less 2003 to work.
I think we should drop VC6 (and take up mingw) *before* 1.0 . Dropping it afterwards is indeed a missed oppertunity,

I think we should drop VC6 (and take up mingw) *before* 1.0 . Dropping it afterwards is indeed a missed oppertunity,
-
- OGRE Retired Team Member
- Posts: 19269
- Joined: Sun Oct 06, 2002 11:19 pm
- Location: Guernsey, Channel Islands
- x 66
I agree with _mental_, that since we have supported VC6 so far and potentially built up a VC6 user base, we should support them for 1.0. When I said 'near future', I was talking about near term after 1.0 really. Whilst I can appreciate the opinion that dropping it before 1.0 would make the 1.0 release 'cleaner', I don't think that outweighs the need to support the existing base with a 'finished' release. There's also the issue of timing - VC8 won't be out officially until a good few months after 1.0 anyway. I think that once VC8 is officially released, we should shift version support upwards; I see no justification to support 3 major versions of a product, but the current and previous version is reasonable.
I also think this will give us enough time to test MingW properly. Given the amount of work that's in progress for 1.0 I think we have enough on our hands, but we can gradually build up the MingW support over that time. If we drop VC6 before 1.0, we should get no-cost alternatives 100% supported as a replacement to avoid potentially losing users, and I don't know that we have the time for that. Better to overlap them I think.
I also think this will give us enough time to test MingW properly. Given the amount of work that's in progress for 1.0 I think we have enough on our hands, but we can gradually build up the MingW support over that time. If we drop VC6 before 1.0, we should get no-cost alternatives 100% supported as a replacement to avoid potentially losing users, and I don't know that we have the time for that. Better to overlap them I think.
-
- OGRE Retired Team Member
- Posts: 419
- Joined: Mon Jan 27, 2003 11:51 pm
- Location: The Woodlands, TX
-
- Gnoblar
- Posts: 22
- Joined: Wed Oct 01, 2003 7:38 am
- Location: California
I am not a source of free labor for Microsoft. If they want me to test their products, they can pay me.:wumpus: wrote:You can use the free VC8 (with IDE!) beta (http://msdn.microsoft.com/express/) to compile OGRE (there's a topic describing exactly what you need to do), maybe that's a good hint to current VC6 usersThis means you don't have to mess around with getting the free but IDE-less 2003 to work.
I think we should drop VC6 (and take up mingw) *before* 1.0 . Dropping it afterwards is indeed a missed oppertunity,
-
- OGRE Expert User
- Posts: 557
- Joined: Wed May 05, 2004 3:19 pm
- Location: Portland, OR, USA
I agree with Monster. Supporting VC 6.0 in the 1.0 build and then dropping it makes no sense to me. Version 1.0 should be the "foundation" release - and anything in it should be considered "base". Putting in something you know you are going to drop almost immediately thereafter makes no sense.monster wrote:Far be it from me to disagree with the Ogre devs, but IMHO I'd suggest the exact opposite.Personally I'm all for getting rid of the VC 6.0 build, but I think this should be a post 1.0 thing. We've supported it this far so I think we should support it for our first major version.
![]()
If you're not going to support VC6 going forward, then desupporting it before you get to 1.0 seems like the sensible thing to do. Otherwise, people using VC6 are going to pick up Ogre 1.0 and then get really upset when 1.1 comes out and they're suddenly desupported. If "official" Ogre doesn't support VC6 then any separate VC6-compatible branch (if one exists) should never make it to 1.0, to save confusion.
Having said that, I think there should be an alternative and official support for DevCpp/MingW seems like the ideal candidate. Personally I use VC7.1 but I can understand that people can't afford to / don't want to fork out for this Microsoft gubbins. I'd hate to see Ogre held back because of hacks needed to support an ancient compiler, so DevCpp/MingW looks like the only reasonable way forward.
Drop it now is my vote. And up until a week ago, I was still using VC 6 for Ogre. VC 6 is old and decrepit. It's time to lay it to rest. BTW, there is a way to use the VC 7 Toolkit with VC 6. See the following webpage:
http:// http://www.sawtoothdistortion.com/Artic ... piler.html
Note that doing so (using the VC 7 compiler with VC 6) is not without problems, but it's doable..
Chaster
-
- Halfling
- Posts: 68
- Joined: Tue Nov 02, 2004 8:01 pm
If you're planning on supporting DevCPP/MingW and VC7.x, why bother using VC6.0? Like other people have said, it's "old and decrepit".
Take, for example, the issue with compiling OGRE: with VC6, you're REQUIRED to use STLPort (which isn't such a bad thing), but with VC7.x, it's now optional. That's one less dependency on compiling. Personally, I was never able to get STLport to work with VC7.1, so I'm just using the STL that comes with VC7.1 to compile with.
If that's just the beginning of the issues with VC6.0, then wouldn't it be better to drop it? From what Chaster said:
Unfortunately, there's no easy trade-off for this. But, if you are planning to cut off support for VC6.0 entirely, it might work better to stop supporting it earlier, that way, when v1.0.0 is released, people will have had experience using OGRE with the supported compilers.

Take, for example, the issue with compiling OGRE: with VC6, you're REQUIRED to use STLPort (which isn't such a bad thing), but with VC7.x, it's now optional. That's one less dependency on compiling. Personally, I was never able to get STLport to work with VC7.1, so I'm just using the STL that comes with VC7.1 to compile with.
If that's just the beginning of the issues with VC6.0, then wouldn't it be better to drop it? From what Chaster said:
You may actually lose users if the VC6.0 support was left in for v1.0.0, then dropped right afterwards. However, by adding support for DevCPP/MingW, which were free the last time I looked (and are pretty decent to use), the VC6.0 users may take that route, or upgrade when VC8 is officially released.Version 1.0 should be the "foundation" release - and anything in it should be considered "base". Putting in something you know you are going to drop almost immediately thereafter makes no sense.
Unfortunately, there's no easy trade-off for this. But, if you are planning to cut off support for VC6.0 entirely, it might work better to stop supporting it earlier, that way, when v1.0.0 is released, people will have had experience using OGRE with the supported compilers.