Re: Midgard

new topic     » goto parent     » topic index » view thread      » older message » newer message

On Sunday 22 August 2004 01:08 pm, Martin Stachon wrote:

> Hello Travis,
> will this work also under Windows? Qt applications seem to behave better
> under Windows than GTK ones.
>
>     Martin

Hello Mr. Stachon!

As I indicated in the documentation, at this time I have no plans to 
consciously make Midgard cross-platform.  If I have a lot of people request 
that I do so, I could be persuaded to do my best not to write any 
platform-specific code.  As far as reasoning for this is concerned, again, 
I've outlined that in the documentation, but to summarize:

I haven't coded anything for Windows in quite a long while, and the only 
reason I even have Windows on my machine is for the sake of my scanner.  (I 
bought it cheap, and it has to have Windows ... got to be a correlation 
there.)  Other than that, I don't use Windows, and if turned on and left to 
its own devices, the computer defaults to booting into Linux.  I share many 
of Mr. Mullins' opinions concerning Windows, but I won't expound on them 
here, as I recently donated my asbestos underwear to the volunteer fire 
department.

While Qt in Linux is distributed under the GPL (actually, it is dual-licensed 
and is available under the Q Public License as well), Qt for Windows is not.  
In order to legally develop using Qt in Windows, the purchase of a license is 
required.  The cheapest license that I found for Qt while looking through 
their website was $1,500 US.  Given I don't ordinarily code for Windows, and 
have no plans to, I simply can't justify the expense.  Therefore, even if I 
did try to make Midgard cross-platform, I would have no way to test it on my 
own machine.

The best that I could do, again, would be to make sure there is no 
platform-specific code, and if there is, place it in a if platform() = ... 
then  block.

That having been said, considering the cross-platform capabilities of both Qt 
and Euphoria, it should, in theory, be trivial to port Midgard.  There is 
only one function in the Euphoria code that would have porting issues, and 
that would be a simple matter to fix.  As far as the shared library code 
(written in C++ with exposed functions declared with extern "C"), I can think 
of no issues off the top of my head.  I can't see why MinGW wouldn't be able 
to build the shared library code into a .dll with a little tweaking of the 
makefile ... assuming, of course, that the both the developer and target 
machines have the Windows versions of the Qt Development tools to link 
against.

At this point, to build the shared library, the only items you would need to 
have are the Qt shared libraries, the header files, and the moc meta-object 
compiler.  Oh yeah, and a $1,500 license.

Remember too that Midgard is also licensed under the GPL.  It is under that 
license no matter what operating system it resides on.  This means that if 
you happen to have a license for Qt for Windows, and you want to port it, 
have at 'er.  If that is the case, it might be best to wait until I have 
released a beta as opposed to "previews" ... Midgard is extremely unstable at 
the moment, and the code could violently change between releases until I get 
the thing pinned down.

I hope this answers your question.  Have a wonderful day!


Travis.

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu