Actually the dependencies issue is very important. Although OGRE has a very much plugin oriented interface, it is not that plugin friendly because of following issue:
If I use a custom built OgreMain.dll, the plugins built with other compilations of OgreMain.dll (or any other dll like rendersystemXX.dll) wont work with my dll (causing entry point etc. exceptions)
So, lets say I developed plugin for OGRE, I cant just distribute the DLL or SO and other people use it as it is. They need to compile it with their version of OGRE in order for it to work.
The only solution to this problem is to use OGRE SDK for the builds. If I compile my plugin with OGRE SDK, it will run as it is on any other people's machine which is using the SDK without any problems.
But then comes the dependencies problem. the version of CEGUI used with OGRE SDK is a bit outdated, if you want to use the latest features you need to rebuild with latest CEGUI, then comes the incompatibility of the DLLs issue.
Since CEGUI is a special case it may not be that important. But we cant say the same for CG. The current version of CG used with OGRE SDK has some serious problems which are fixed with the newest CG SDK. Now if I compile with the new CG dependencies, my DLLs wont be compatible with the pre-built plugins created by other people.
So, using the latest version of Dependencies with each OGRE SDK would be very helpful in terms of Plugin compatibility since all plugins built with the SDK release will be compatible with the SDK Dlls and can be distributed as pre-built plugins. Also using the latest stable releases of dependencies may help finding reasons of the bugs (some bugs are fully dependencies related)
Thats my 50 cents
A LITTLE NOTE: Actually there is a slight problem with the attitude of OGRE Team (no intention to offense anyone, OGRE is an awesome work presented by very good programmers). The problem can be called as "Developer's Syndrome". It occurs to me that the TEAM prefers to think that everyone using OGRE is a programmer who can tailor OGRE to his/her needs and prefers to think as if there are no final users. Thats exactly the same syndrome which linux developers had once. A bright OS like linux had a user base of %0.1 in whole computer world, although its FREE. The problem was : Although linux was a powerful and customizable OS, its interface was only usable by expert programmers and was like an AlienMachine for a regular user. Only when user friendly interfaces to customize linux started to spread, it had a sudden jump in terms of user base. So, we need more user friendly approaches for OGRE along with programmer friendly approaches. We need more Editing interfaces for OGRE, for people who doesnt know or arent interested in inner workings of engine, but who just wants to visualize their dreams. We need an up-to-date common SDK which can be used as a common library to create distributable plugins (which dont require a rebuild on users machine) etc. etc.
I know that I am very new in the community, I am sure that the developers may have spent quite a lot of time deciding the way to go and to give the final decisions about the subjects I mentioned here, I even feel like I have no right to criticize the decisions made by the TEAM and believe me have no intention to offense anyone in any way, but needed to share my feelings from the experiences I had with OGRE.
Ismail TARIM,