i noticed that it was not required for visual studio.
questions:
1. why is the stlport 5.0 only needed on mingw/codeblocks and not on ms visual c++
2. i downloaded the latest sdk for ogre (version 1.7) but i cant find the so called stlport, any ideas on where it is (because the tutorial says its necessary)
$(OGRE_HOME)\stlport\stlport
VERY IMPORTANT: The stlport include directory has to be first in the include directories
Thanks in advance.
Last edited by trueleowdeo on Fri Mar 12, 2010 4:02 pm, edited 2 times in total.
I am no expert on this topic, but as far as I know it's like that: On some platforms, the STL (Standard Template Library) is natively exisiting and working (e.g. Windows), but on some others it is not. I guess VC++ has this library inside of it, so it isn't needed in these cases.
Ogre Admin [Admin, Dev, PR, Finance, Wiki, etc.] | BasicOgreFramework | AdvancedOgreFramework Don't know what to do in your spare time? Help the Ogre wiki grow! Or squash a bug...
No, the reason is quite different and has to do with the way the STL is linked against in mingw 3.x. You really should use mingw 4.x instead, e. g. use the installer from http://www.tdragon.net/recentgcc/ . In doing so, you don't have that problem and you don't need STLport.
But isn't the STL platform dependent (or has some other limitation, so that not all compiler have it or can use it)?
Ogre Admin [Admin, Dev, PR, Finance, Wiki, etc.] | BasicOgreFramework | AdvancedOgreFramework Don't know what to do in your spare time? Help the Ogre wiki grow! Or squash a bug...
its wierd because it seems that this "stl port" is actually different from the usual stl we are used to using in "normal c++"
The stlport include directory has to be first in the include directories. If it is not then headers used for libstdc++ could get included which will cause conflicts with stlport during the link stage
spacegaier wrote:But isn't the STL platform dependent (or has some other limitation, so that not all compiler have it or can use it)?
Yes, but mingw does have its own STL implementation. The problem with the mingw 3.x releases is (as far as I recall) that they only offer statically linked versions of the libstdc++, and this causes serious issues in a multi-DLL project. So to circumvent the problem one can replace libstdc++ with STLport, but imho it's kind of a hacky solution. So better to just use a newer MinGW release