AGS Ubuntu Linux 2.72 Binaries Released!

Started by EvilTypeGuy, Wed 24/01/2007 05:06:03

Previous topic - Next topic

SSH

Well, glibc will get linked the same way as all the other libraries: there's no special handling of it. But yes, it is a 19 or 20M download. Still, 20M is not as big as it used to be ;)
12

iPwnzorz

With this is it possible to transfer works from a Windows AGS? I would like to be able to transfer my work to my Ubuntu PC

jkohen

Quote from: iPwnzorz on Thu 25/01/2007 15:05:05
With this is it possible to transfer works from a Windows AGS? I would like to be able to transfer my work to my Ubuntu PC

This is a port of the AGS run-time, not of the editor.

That being said, the AGS editor runs alright with Wine, so you should be fine (with some minor caveats). As usual, make backup copies, etc.

iPwnzorz

Oh right. Good thing I have Wine. Now if I can only get past my weird second GRUB install... Anyone know how to edit menu.lst with Arch?

farvardin

it tried also to copy the allegro libs from a debian system to my opensuse, I could start the runner, but it immediatly froze the system after that...
I think opensuse has a more recent glibc, but I'll need to compile the whole allegro stuff.


EvilTypeGuy

#25
Quote from: farvardin on Thu 25/01/2007 06:09:17
if I remember well, on Neverwinter night for Linux they put some libraries into the same folder, and a script to include them in the game, so most players can run the game :

#!/bin/sh

# This script runs Neverwinter Nights from the current directory

export SDL_MOUSE_RELATIVE=0
export SDL_VIDEO_X11_DGAMOUSE=0

# If you do not wish to use the SDL library included in the package, remov
e
# ./lib from LD_LIBRARY_PATH
#export LD_LIBRARY_PATH=./lib:./miles:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=./miles:$LD_LIBRARY_PATH

./nwmain $@


Yes, but the problem is my libraries depend on other libraries, and depending on how the libraries on your system are built, it may or may not work. In addition, the disadvantage of distributing my own is that it isn't optimized for your distribution. For example, if your distribution uses JACK audio or aRTS or ESD, etc. you may not get any sound at all! Likewise, I would have to build my libraries for the lowest common denominator. Meaning, I would have to build them for i386, with no SSE, MMX optimizations, etc. Otherwise, systems that didn't have those would possibly fail and so on.

The other problem is Allegro itself and the libraries that AGS uses. They're not nice clean portable libraries you can just shuttle around, unlike SDL. SDL was meant to be redistributed with your game and because of that, it's much easier.

I'm well aware of the Neverwinter Nights solution, but I hate it since it involves a shell script.

As I said before, Linux development is a mess.

I appreciate that you all are trying to help, but I have been doing software development for the past eighteen years, there is no easy solution here.

All I can say for now is to use Ubuntu.

Nais

#26
I'm using Ubuntu Edgy, but the 64 bit version. It's not working and I'm assuming it's because it's looking for the 32 bit libraries? In particular it is having a problem finding liballeg.so.4.2, which I do indeed have, albeit it the 64 bit version.
The last versions have worked for me, is it because of the new linking?

jkohen

#27
Yes, that is the case. Install a 32-bit chroot inside your 64-bit system and you'll be fine. I guess Ubuntu has tutorials or automatic procedures to this end, just like Debian/AMD64 has.

Edit by strazer: No need to quote the whole post directly above yours!

Nais

#28
Thanks for the confirmation, blashyrkh. I just wanted to be sure nothing else was going on. Not going to bother chrooting, because I do have a 32bit install on another partition. I'll just use that instead. Thanks.

marceledward

#29
Quote from: EvilTypeGuy on Thu 25/01/2007 00:56:38
Quote from: marceledward on Wed 24/01/2007 19:29:47
I am using fedora core 6 and I can't get it to run either

first it could not find some library's so I symlinked them:
# ln -T /usr/lib/libdumb-0.9.3.so /usr/lib/libdumb.so.1
# ln -T /usr/lib/libaldmb-0.9.3.so /usr/lib/libaldmb.so

But the fun didn't stop here, then ags returned:

./ags: symbol lookup error: /usr/lib/liballeg.so.4.2: undefined symbol: _blender_trans24

It seems to have to do with the allegro lib, but I am not sure..
Wich version of alllegro did you use to build the binary ?



I used Allegro 4.2 as built and distributed from the Ubuntu repositories. Which means that the Debian for your distribution is probably built differently. Joyous!

I got it running.!

I copied the liballeg.so.4.2 from the tar in the allegro deb file from the ubuntu repository ( http://us.archive.ubuntu.com/ubuntu/pool/universe/a/allegro4.2/liballegro4.2_4.2.0-1build1_i386.deb ) to /usr/lib/liballegdeb.so.4.2 and changed the liballeg.so.4.2 symllink to point to the deb library. And the other libs in the .deb file also. (I've simply overwritten these, after making a backup of the original library's, there are only a few packages on my fc6 box wich use allegro, they got now a risk of crashing now, the fun never stops ...)

oeps I find the above confusing.

So to get ags running on fedora core I had to make two symlink to existing libs in the /usr/lib dir and I had to copy the downloaded allegro lib to the libs dir.

This actually means we will have to include the libs in our linux games releases, to ensure they will run on other linux distros.
Or maybe not,
Today I got ags running with a self compiled allegro. 4.2.1
I used the following configure:
# ./configure --enable-staticprog=yes --enable-static=yes --prefix=/usr

>> So ags needs a static conpiled allegro to run.

And the sound is working. (I use ogg sounds with PlayMusic(x); and SetMusicRepeat(0); in the global script)

I think this would be something for a wiki page: 'how to get ags running on  fedora core'

=================================================================
I've made a download with the correct allegro ubumtu lib and with a setup.sh script to install it and make the correct symlinks, this script works for fc6 but should work on other distro's as long as there is a /usr/lib dir.

http://meverhagen.nl/tikiwiki/tiki-download_file.php?fileId=94
==================================================================

farvardin

#30
I 've tried also to build my own version of dumb (for allegro), so now I have allegro and dumb, but it's not working at all. The lib went into a libaldmb.a and it's not the one requested by your build.
I didn't manage to compile it for 32 bits.

>distributing my own is that it isn't optimized for your distribution.

it's not a problem if it's 2% slower or what ? It would be better than not working.

>For example, if your distribution uses JACK audio or aRTS or ESD, etc. you may not get any sound at all!

again, it doesn't matter, if we only want to play the game and don't care about sound.

>Likewise, I would have to build my libraries for the lowest common denominator.
>Meaning, I would have to build them for i386, with no SSE, MMX optimizations, etc.

it would be still better to make it run for 95 % of linux users than to please only 2 % of them... ?

I managed to install autopackage programs made for 32 bits processors without any problem.

do you think it would be possible to share your work with someone who could build it for other systems ? I could try to do it if you wish...

EvilTypeGuy

Sorry, but I can't release any of the source code, nor object files for ags.

For now, it remains Ubuntu only. There are too many Linux distributions for me to support, and I am tired of users having a half-hearted experience.

With Ubuntu, I can provide them a simple, guaranteed experience.

strazer

If I may ask, what kind of problems did users report with the old versions?

jkohen

For what is worth, versions 2.62, 2.70 and 2.71 work *perfectly* on Debian. 2.61 works pretty much all right, except for MIDI which needs an external sequencer to play MIDI, but this is not a fault in the Linux port, and I understand I could set up a software sequencer with Timidity, if I really wanted to.

EvilTypeGuy

#34
Quote from: strazer on Fri 26/01/2007 22:21:45
If I may ask, what kind of problems did users report with the old versions?

Everything from random colour corruption, runtime symbol errors like the ones listed here, sound problems, to complaints about dynamic linking not being used so they couldn't use their own special build of Allegro. Most of them because the version of X I statically linked to for Allegro was way older than theirs.

Plus I've been told to people who are part of managing some of the bigger distributions (RedHat, SuSE, etc.) that dynamic libraries are the way to go and static linking is something that is likely to cause more harm than help.

I may look into seeing what I can do with some virtual machine software to possibly have a build environment where I can build a binary for other distributions. But, I have no idea for sure yet, and my time is very limited as I'm preparing to leave for Australia. If I ever did support other distributions, it would likely be the latest Debian Stable, Fedora Core (current version) and possibly OpenSuSE. I hate the rest of them. To be quite honest, I'm extremely disappointed with the fact that the Linux community has hundreds of distributions. It makes the job of developers incredibly difficult, and really only serves to frustrate users.

It just takes a lot of disk space, time and effort to maintain so many different operating systems. I had about five different Linux distributions on my old workstation just to build and test ags, and it was a real pain.

marceledward

That impressive.

It must be a pain to even get all those different distrubutions up to date.
And all just for a build.

It's a bit off topic, but the there a so many different linux distributions since there are many different philosofies. Fedora is about getting the latest versions of open source. So it's without official mp3 support and with an estimates 10 gig download pro year for the updates and upgrades. There are people who hate fedora for that. So has every linux his own philosofy, I never critizese peolple for making a choise for specific distribution.

So I think the question is:

How do we get a ags release wich will run on as many  linux distribution as possible with the minimal effort of the ags builder.
The source isn't availible for recompiling to other ags users, and I think this is ok. Since I was actually working on making an adventure, not on developing the ags linux player.

Maybe you could make use of  a plague servers. These are servers wich are used to compile and make rpm's or deb files for a specific linux distribution.

farvardin

#36
>Plus I've been told to people who are part of managing some of the bigger distributions
>(RedHat, SuSE, etc.) that dynamic libraries are the way to go and static linking is something
>that is likely to cause more harm than help.

yes, maybe in the case of opensource software, because this way it's flexible enough, but for ags we don't have access to them. I think most of binaries distributed this way are statically linked. And most people are able to run them, on whatever distribution. I could run ags271 on many different distributions.
I think with "support" for fedora core, it would run on almost everything else, from opensuse to debian, and even ubuntu

The idea of using external servers made for compilation could be great. I'm sure with your modified source code it wouldn't take very long to recompile for more standard systems.



jkohen

Quote from: marceledward on Sat 27/01/2007 15:08:48
Maybe you could make use of  a plague servers. These are servers wich are used to compile and make rpm's or deb files for a specific linux distribution.

I agree that your solution would be really nice, but it were me compiling closed-source, I wouldn't upload it to a plague (sic) server where someone else could decide to keep a copy of my source code without me knowing.

nahuel

I've been trying out the linux port of the engine and I have to say it is quite impressive the work being done there. On the other hand, the mac beta port is not so good. As a linux and mac user I was wondering if it would be possible to compile the linux engine on a mac. Evidently if both are unix environments it should be straightforward. Of course, we would require X11 in mac, but that i included by apple anyway. So, my quetion is, would it be possible for anybody to do such a port? and if not? would the sourcecode of the linux port be available for anybody interested in producing mac binaries?

Mould Cheeze

Hello, I have downloaded AGSedit  and run itt under wine and it works fine. But when I test my game I cannot hear midi sounds. Wave works fine but no midi.
Please help me!

SMF spam blocked by CleanTalk