2016-08-03 Linux Package Requirements

Details about updates to Shores of Hazeron

2016-08-03 Linux Package Requirements

Postby Haxus » Wed Aug 03, 2016 5:59 pm

Ubuntu 16

Fixed a library dependency that caused grief on Ubuntu 16 when testing on a computer with a freshly installed OS.

The command to install packages needed by Shores of Hazeron on Ubuntu16 is...

Code: Select all
sudo apt-get install libxcb-render-util0 libxcb-image0 libxcb-icccm4 libxcb-randr0 libxcb-keysyms1 libxcb-xinerama0 libsdl2-2.0-0 libopenal1 libpcre16-3

This same change will affect the other Linux platforms, except Fedora. I am building them. They will be posted as they finish.

Mac OSX version is currently borked but I am also working on that. I should have a fix posted soon. I set it up to build OpenGL 3.2 and OpenGL 4.1 versions. We'll see how that works.
User avatar
Haxus
Site Admin
 
Posts: 2705
Joined: Fri Jan 14, 2011 8:00 pm

Re: 2016-08-03

Postby Haxus » Wed Aug 03, 2016 8:14 pm

Mint 18

Linux Mint 18 build was updated.

The packages needed by a freshly installed Mint 18 are the same as Ubuntu 16, as shown in the previous post.
User avatar
Haxus
Site Admin
 
Posts: 2705
Joined: Fri Jan 14, 2011 8:00 pm

Re: 2016-08-03 Linux Package Requirements

Postby ResonKinetic » Wed Aug 03, 2016 9:16 pm

thanks for putting the board up top; it's nice for this to be one of the first things you see on the forum

it also reflects nicely on how progress is prioritized

I also appreciate that even if I ditch Windows (which is totally a possibility considering all their shady bs lately), I'll still be able to play SoH on Linux at least
Image
User avatar
ResonKinetic
 
Posts: 1561
Joined: Mon Dec 31, 2012 10:30 pm

Re: 2016-08-03 Linux Package Requirements

Postby Haxus » Thu Aug 04, 2016 9:29 am

Mon plaisir, Reson. (Only a pleasantry; I don't really speak French :D ) I am already enjoying the use of this forum instead of the old web page.

Debian 8

Debian 8 build is posted. The package requirements are the same but the installation procedure is slightly different since the sudo command is not available. On Debian, package installation looks more like this.

Code: Select all
$ su -
Password: <enter the root password>
# apt-get install libxcb-render-util0 libxcb-image0 libxcb-icccm4 libxcb-randr0 libxcb-keysyms1 libxcb-xinerama0 libsdl2-2.0-0 libopenal1

<lots of output>

# exit
$

At this point, only the Mac OSX build is still a problem. I will work to have it cleaned up by the end of today.
User avatar
Haxus
Site Admin
 
Posts: 2705
Joined: Fri Jan 14, 2011 8:00 pm

Re: 2016-08-03 Linux Package Requirements

Postby Haxus » Thu Aug 04, 2016 1:39 pm

Fedora 24

Fedora 24 required a single package be installed after installation on a clean machine. That looked like this.

Code: Select all
sudo dnf -y install openal
User avatar
Haxus
Site Admin
 
Posts: 2705
Joined: Fri Jan 14, 2011 8:00 pm

Re: 2016-08-03 Linux Package Requirements

Postby Haxus » Thu Aug 04, 2016 2:55 pm

In all cases, a hardware accelerated video driver is needed. The stock video driver was not sufficient on any Linux version I tried.

Getting that video driver installed can be a challenge, depending on your hardware. You are most likely to be successful if you have only one monitor. Having an nVidia GPU also improves your odds quite a bit over an ATI GPU; ATI support used to be better in Linux but seems to have degraded. I have found Ubuntu and its derivatives to be the best about finding/installing the appropriate drivers.

If you were switching to Linux, I would recommend burning an installation disc of every Linux platform you are willing to use. Then try installing them until you find the one that likes your hardware the best. At the end of the day, the one that works is the one you want.

This is the order that I would try them.

    Xubuntu - Ubuntu, with a sane desktop. Regular Ubuntu has the new insane desktop. Xubuntu installed fine on VMware and my Alienware portable. The installer for regular Ubuntu crashed on my portable.

    Mint - Their own Cinnamon desktop, Windows 7-ish with some of the polish of a Mac. Based on Ubuntu. Installed fine on VMware and my portable. Not recommended if you plan to dual-boot into Windows. Mint noticed my Windows 7 partition, which was reassuring, then proceeded to destroy it.

    Fedora - New insane desktop. On VMware, the login screen is black :( but it runs fine after you fumble/login. Installed fine on my portable. UPDATE: After a couple of OS updates, the login screen is now just fine on VMware.

    Debian - New insane desktop though desktop choices abound during install. Bricks my portable. VMware runs fine.
The default desktop is really irrelevant since it can be change after the OS is installed. The "new insane" desktop mentioned is that thing they did in the last few years, with the column of big buttons down the left side of the screen. I think it was a way of unifying the user interface between a PC and a tablet. My PC has a keyboard with 100+ keys, a mouse with a wheel and laser and multiple buttons, and a joystick with buttons and twistie things and knobs and of course the stick of joy. I am ok with using them. A tablet, on the other hand, can be operated by a person with only a finger or toe, their nose, or even just a stump of a limb. I love tablets but my PC is not a tablet. </rant>

Wait, where was I? Oh yeah...

If you have multiple monitors then Xinerama is the feature you want. It essentially unifies the screens of all of your monitors and treats them as one big monitor. Xubuntu was the only Linux version that I was able to get working with hardware accelerated graphics and Xinerama on my desktop PC. With all the others, it was one or the other but not both. I think all of them supported Xinerama with their stock drivers, which would be great if you were not going to play games.

Multiple monitors can be used without Xinerama. In that case, each screen is actually treated as a separate terminal. The mouse cursor is the only thing that can travel between them. You cannot drag windows from one to the other. This setup can support hardware accelerated graphics. This is how my desktop PC was running for the last few years because Xinerama got broken in the nVidia driver at some point. Now it works, by some miracle. I'd swear it didn't work the first time I tried to install Xubuntu 16.

A friend of mine told me an old French saying, "Why does a man beat his head against a wall? Because it feels so good to stop." Wise words, Jean.
User avatar
Haxus
Site Admin
 
Posts: 2705
Joined: Fri Jan 14, 2011 8:00 pm

Re: 2016-08-03 Linux Package Requirements

Postby Haxus » Thu Aug 04, 2016 4:48 pm

OS X

I worked out the issue with the Mac. Something changed about the way the libraries are prepared for deployment so the program stopped finding some of its libraries.

With that fixed, the next huge problem popped up. The OpenGL implementation on the Mac only supports 16 concurrent texture units. This causes three fragment shaders to fail to compile, the ones used for rendering the terrain. Apple documentation shows this to be the case on all Macs, regardless of OpenGL version.

The solution is to reduce the number of different textures used by those three shaders. I'll get to work on it after I get done crying.
User avatar
Haxus
Site Admin
 
Posts: 2705
Joined: Fri Jan 14, 2011 8:00 pm

Re: 2016-08-03 Linux Package Requirements

Postby DerJuden » Thu Aug 04, 2016 5:53 pm

Haxus wrote:OS X

I worked out the issue with the Mac. Something changed about the way the libraries are prepared for deployment so the program stopped finding some of its libraries.

With that fixed, the next huge problem popped up. The OpenGL implementation on the Mac only supports 16 concurrent texture units. This causes three fragment shaders to fail to compile, the ones used for rendering the terrain. Apple documentation shows this to be the case on all Macs, regardless of OpenGL version.

The solution is to reduce the number of different textures used by those three shaders. I'll get to work on it after I get done crying.


Used to be an Apple developer. You are not alone; It has made me cry too. C is one of my favourite programming languages, C++ feels like the natural progression of C to OO and beyond. Objective-C (what apple forces you to use when you develop iOS programs!!!) is like a failed aborted child of C and Smalltalk that is rife with saline burns from the botched abortion; the syntax clashes HARD imo. So glad I rarely have to deal with Apple anymore and their, for lack of a better term, hipster way of doing things.

Moral of the story, never expect industry standards (or even good standards) from Apple. Expect pain, tears, app store bureaucracy and limitations.
C++ has multiple inheritance and pointers, checkmate Javafags.
Our Lord And Saviour Dennis Ritchie > Stevey Jibz
User avatar
DerJuden
 
Posts: 22
Joined: Sun Jul 12, 2015 12:36 pm

Re: 2016-08-03 Linux Package Requirements

Postby Onepercent » Thu Aug 04, 2016 8:11 pm

DerJuden wrote:
Haxus wrote:OS X

crying.



This is why i've never owned an iphone since the 4.

Oy vey
User avatar
Onepercent
 
Posts: 164
Joined: Thu Mar 10, 2016 3:23 am

Re: 2016-08-03 Linux Package Requirements

Postby DerJuden » Thu Aug 04, 2016 8:39 pm

Onepercent of Borg wrote:
DerJuden wrote:
Haxus wrote:OS X

crying.



This is why i've never owned an iphone since the 4.

Oy vey


Oy gevalt! Me too goy. I guess we have nothing to kvetch about anymore; we are free of that company of schmucks.
C++ has multiple inheritance and pointers, checkmate Javafags.
Our Lord And Saviour Dennis Ritchie > Stevey Jibz
User avatar
DerJuden
 
Posts: 22
Joined: Sun Jul 12, 2015 12:36 pm

Next

Return to Updates

Who is online

Users browsing this forum: No registered users and 1 guest