compile error Topic is solved

Problems building or running the engine, queries about how to use features etc.
User avatar
leedgitar
OGRE Community Helper
OGRE Community Helper
Posts: 61
Joined: Wed Jan 22, 2003 1:58 am
Location: Baltimore, MD

Post by leedgitar »

Not sure what Antiarcs ultimate plans are for Chronos so I won't speak for him. But I would imagine it would take quite abit of work to get it running outside of Windows. Currently there are a few cross platform GUI toolkits out there, but I am personally not that fond of any one of them. As with most things though, they should improve over time.

Also, to gauge how cross platform compatible your source will be depends on what it does and what it uses. In the case of Axiom, the core code is pure C# and uses the core CLR libraries that are non-MS specific. Believe me when I say I won't be utilizing web services for this, ever. The things about .Net that are marketed the most are things I actually use the least or not at all :D. I just love the language, the tools, and the core CLR stuff.

*wonders what the thread topic was again...gives up*

Most of the time spent getting Axiom running on Linux was spent by me just getting familiar with the platform itself. The Axiom OpenGL code is split out into distinct platform codepaths like Ogre (Win32, SDL, etc), so that advantage can be taken of the current platform for things like GL context and such. There is no #if WIN32 business going on anywhere (seach my codebase if you want :) ). I made about 10 code changes that were required due to very small differences between the compilers and the runtimes (which upon submission to the Mono team, should get fixed in the near future because there should be no differences). I also removed any trace of Win32 specific code in the core and abstracted it out. Also, something I think is quite cool, is that I use DotNetPreBuild to automatically generate project files so I don't have to manually maintain various build environments. It supports conditionals, so when it is run on Linux, my setup automatically generates project files for the SDL platform manager, includes the SDL folder under the GL renderer project, and exludes the DX renderer, etc. So, 2 weeks ago or so I pull out the Axiom source to a fresh folder, generate the project files, do a little hack to the MonoDevelop combine that I have to do because it hangs loading large projects (hey, nothing is perfect eh :) ), open the combine, build it, and run it. It requires a few native libs to be in place (the obvious, like GL, DevIL (with PNG and JPG support), SDL, and optionally libnvparse).

So as far as Axiom is concerned, at this point I don't even consider it "ported" to Linux, it simply runs. Another nifty thing is that the 3rd party assemblies I use such as Tao.OpenGL run on both platforms. The same assembly...no Win32 and Linux versions or anything. Build on Windows, use on Linux, yada yada yada. The only thing that would make things better is if MonoDevelop were more mature. It's very usable at this state, considering you get intellisense and all that good stuff, but it should improve over time (assuming it hasn't been abandoned...I saw tumbleweed rolling by when I last hopped into their IRC channel).

I'm not worried about config dialogs or anything, because I have a Demo Browser (work in progress) that is built using my C# port of CEGUI (yes, either I'm crazy or stupid, but I just love porting that C++ code :lol: ). That way, out of the box it works and looks the same on all platforms, and I don't have to torture myself or anyone else with the added dependencies of a 3rd party widget toolkit. Soon it will support changing the resolution and whatnot in an options dialog, tho I don't know if it something I'll apply in the same session or until after the browser is restarted, but thats details to be worked out.

Image
User avatar
leedgitar
OGRE Community Helper
OGRE Community Helper
Posts: 61
Joined: Wed Jan 22, 2003 1:58 am
Location: Baltimore, MD

Post by leedgitar »

Btw; anyone use any PowerPC emulators (like PearPC)? I'd like to complete the platform trifecta by getting up and running on MaxOS X. Given that its a Linux based platform, I'd almost like to assume it would run outright, but I'd like another screenshot to add to my collection :)
User avatar
Fatman
Gnoblar
Posts: 8
Joined: Fri Dec 31, 2004 2:40 am

Phew!

Post by Fatman »

Thanks for clearing that up sinbad, I'm much relieved. :)

/me runs off to check out Eclipse...
Nihilus
Gnoblar
Posts: 1
Joined: Thu Jul 29, 2004 9:16 pm

Post by Nihilus »

leedgitar wrote:Btw; anyone use any PowerPC emulators (like PearPC)? I'd like to complete the platform trifecta by getting up and running on MaxOS X. Given that its a Linux based platform, I'd almost like to assume it would run outright, but I'd like another screenshot to add to my collection :)
Mac OSX isn't Linux based, it's Darwin (MAch/BSD) based, and you don't use X by default, so don't expect trivial ports that way.

PearPC wasn't too difficult to get running, but it only emulates a specific subset of the hardware which is generally pretty low-end. Not sure it'd be very useful for anything other than maybe compiling very slowly.
User avatar
leedgitar
OGRE Community Helper
OGRE Community Helper
Posts: 61
Joined: Wed Jan 22, 2003 1:58 am
Location: Baltimore, MD

Post by leedgitar »

Good, thats enough reason for me to want to stay clear of that. The first person to ask about Mac support on my forums will be automatically volunteered to accept the task :)