Showing posts with label platform. Show all posts
Showing posts with label platform. Show all posts

Tuesday, 15 January 2019

Cross Compiling Clarity

I have an important distinction to make clear... Cross Compiling is using a machine with a different processor type than the target machine for your program.

So, you have a PC with an Intel Core 2 Duo in it, and you use a compiler to output an ARM executable, that is cross compiling.

If you're on an Intel Core Duo toting 15" MacBook pro (from 2006) and you use that to produce the same ARM executable, that's still cross-compiling.  BUT if you use that MacBook to generate a windows executable it's not cross compiling, as the processor is the same in both targets, you're not crossing over...

Some folks argue this differently, because you're crossing between the Windows and Apple OS's you're cross-compiling.  In my book, and by the definition given elsewhere, you're not, in this case you are cross-platform (the platform being the OS) but you're not cross compiling because the processors are the same family.

That's all, I just wanted this out there, argue as you all see fit.


Monday, 15 August 2016

Programming : My Thoughts on Kivy

About a year ago, I had to work on Python, suddenly and without warning.  And though I had tinkered with python I neither listed it in my arsenal of programming languages nor thought myself conversant enough in it to deliver a product.  But the powers that be said "he's the linux guy, this is python, we don't want it on Windows, give it him".

So there I was, Python on the Linux server and Python on the Android phone... Two parts of the same project, and they needed a nice UI.

Now I don't know Qt at all, I've used it, never been terribly impressed (though that opinion is for another post and is highly subject to change) with the look of it.  So I set about looking for alternatives.

The alternative I found, which worked best for me, was Kivy.

I found the syntax a little awkward, and the actual creation of the recipe for the WI was very awkward at times, finding what inherited where being the main problem, it was a little.  Well it was a little counter intuitive to say the least, but it worked.

And the product went out there looking black and sleek and cool, and it was on everyone's Samsung smart phone at the launch meeting, and I was quite proud I'd managed it, and Kivy was the key in that delivery.

It has been a year since I created that application, a year of waiting for any feedback, it was a demanding time to get stuff floated and out to users.  I hope they liked it, I certainly did.

Android - Python - Kivy... Pretty much my go-to platform for Android development.

Thursday, 29 May 2014

Is WarThunder coming to Linux?

I've been musing about the future of many of the titles on Steam, and their progress in converting them to Linux; or more specifically the Steam OS.  Valve (the publishers behind Steam) are bit into providing technical talks and information to developers to help assist them in converting titles to OpenGL, so I've taken sometime to look at the games I have on Steam and which ones I'd like to see on Windows.

The first, and most recently played was "WarThunder", and after a little reading and a little looking, I spotted in the launcher the option to use "OpenGL"...


It looks promising therefore that Gaijin are porting the rendering engine to OpenGL, I even went as far as switching to OpenGL an firing up the game, my immediate feedback would be that where I was getting 60FPS+ and even 90 FPS in places, I was suddenly getting an average of 43FPS.  However, the OpenGL rendering is listed as "test" and one would assume its not optimized at all yet.

Performance changes aside it does look like Gaijin could have a Linux operable version soon... I just hope when they fix the annoying team text chat bug soon... What bug is this?  Well, when you crash, or die, you are presented the team chat box; and I often start to type into it information to pass onto my team where I went down, especially if I went down due to enemy fire... You can be midway through typing a message when the screen times out and changes from the view of the opponent who put you down to the "Select a plane" or "Observer" screen... This then re-presents the same (or an identical looking) team chat box, but it has wiped out the input you had just seconds before... This is a bug which has been in the game since I started playing, so it is a very annoying problem and one which either isn't getting reported, or isn't getting noticed and fixed.

Back to Gaijin's development model however, if we search for news or even output regarding their porting to Linux there's little initially to go on, in fact on an unbiased Google search this was the first result.

http://forum.gaijinent.com/index.php?/topic/9346-linux-port/

"At the moment only for Windows. About Mac and Linux we will see in the future."  A comment by a Gaijin Forum Administrator on the 28th July 2012.  So have things changed since then?  The launcher says they have... Pawing through the archives it also appears that OpenGL has been quietly present in the builds since early November 2013.

My question to Gaijin therefore would be, have they been forcing any test clients into OpenGL mode, have they been gathering information, or switching us players to OpenGL to gather rendering information?  Because, it is a setting in a solemn corner of the launcher, but so very important to us Linux-philes, for if they release this game for Linux then I'm down to only three titles needing Windows specifically, I could finally look at just playing their game on a native Linux platform...

Linux is not the first new platform they've targeted with the engine, you can now get the option from the website to download the Mac version of the game client, clearly the Mac version is going to leverage OpenGL, and indeed any Mac based players will be testing the formal OpenGL calls.  Unfortunately that doesn't test for quirks in Linux or Windows with their independent implementations of OpenGL.

Steam OS is also a very new kid on the distro block for Linux, so if they're going to target it surely they're going to also be able to give us tweaks to run it on standard Debian or Ubuntu distro's too.

Excitingly I've spoken to Gaijin, and had a reply from one Alexander Trifonov, his message is short and sweet:


"Linux/SteamOS, please wait a little more and there will be some news"


Thank you for your reply Alexander, we look forward to more news from you soon...


Wednesday, 5 February 2014

Code::Blocks from Source on Linux (Debian) Mint

I've had a bit of a programming tools review, especially on my Linux boxes.  I've been using the stable release of Code::Blocks 12 for a long time, the reason being the lack of time and space to evaluate the newer v13.


Today however, the boss is out of the office, and with two projects under test I'm not going to do any more project progression for the next two days... This is therefore my window of opportunity... My chance to try v13!

And just to add to my thrill... God I'm sad... I built it from source...

For my own records then, my steps were...

1. Install the dependencies...
  sudo apt-get update
  sudo apt-get upgrade
  sudo apt-get install gtk+-2.0
  sudo apt-get install libwxgtk2.8-dev
  sudo apt-get install libwxbase2.8-dev
2. Download the source http://www.codeblocks.org/downloads
3. Extract to a folder and within...
  ./configure
  sudo make
  sudo make install
4. Edit the ld.so.conf
  sudo nano /etc/ld.so.conf
- Add -
include /usr/local/lib
- Save -
  sudo ldconfig
5. Run Code Blocks!

So far my tests have been fine, the project all load, and better than all this... My main project compile time has gotten a lot shorter, I'm talking we've gone from 1m8s on v12 to 48seconds... This may sound like nothing, but extend this out over 137 projects... That's just over 45 minutes on a full system rebuild for the main project.