Adventure Game Studio

AGS Support => Advanced Technical Forum => Topic started by: on Thu 26/08/2004 03:56:01

Title: Undefined Symbol with AGS Linux 2.56-636
Post by: on Thu 26/08/2004 03:56:01
Greetings. I am attempting to play KQ1VGA v3.0 using AGS for Linux on Gentoo Linux. From reading other forum posts, and the changelogs from the Linux engine, I've learned that 636 is the first version that will support v3.0. This also coincides with the first version for which a fully static-linked version is unavailable. However, the shared version gives me the following error when I attempt to run it:

./ags: error while loading shared libraries: /usr/lib/liballeg.so.4.1: undefined symbol: _colorconv_blit_16_to_8

From what I can tell, this symbol is actually defined in liballeg_unsharable.a, which consists of non-PIC assembly routines that can't be loaded dynamically. I am unsure how to resolve this problem; research indicates the person who compiles the binary should be linking against liballeg_unsharable.a. I wonder what's different in Red Hat, if it works there.

If I have time, I'll probably load up a Red Hat installation in VMWare and make sure I'm not just doing something crazy, but I don't have an install off-hand and would have to download ISOs, so I'm not looking forward to such a test.

Anyway, any help resolving this problem would be greatly appreciated, whether it turns out to be a more general build problem, a problem with my setup, or just something stupid I'm doing.

Oh, the same error occurs with 2.60-693.
Title: Re: Undefined Symbol with AGS Linux 2.56-636
Post by: on Thu 26/08/2004 04:14:24
I've renamed kqvga.exe to ac2game.dat, and typed "/.ags" from the console in the directory with all the files. That's when the error comes up.
Title: Re: Undefined Symbol with AGS Linux 2.56-636
Post by: on Fri 27/08/2004 00:17:54
Ok, I've at least worked around the problem for now. I've explored the build environment the RPM encounters on a fresh Red Hat installation and replicated that as best as possible.

After some experimentation, I think the problem is most likely with the version of Allegro. Gentoo was currently installing 4.1.15. I tried compiling it several times with various options without success. However, a compile of 4.1.11 resulted in the program working. I can't be sure that it wasn't some option, but the version seems the most likely cause.

Anyway, it's working now.
Title: Re: Undefined Symbol with AGS Linux 2.56-636
Post by: Pumaman on Sun 29/08/2004 21:40:08
Thanks for the infomration, hopefully it'll help anyone else who has the same problem. I'm afraid I'm not very au-fait with the Linux version, so I can't really help.
Title: Re: Undefined Symbol with AGS Linux 2.56-636
Post by: EvilTypeGuy on Mon 06/09/2004 01:01:29
I've compiled the new version of AGS I just posted (2.61) with Allegro 4.1.15 so this shouldn't be a problem anymore. The newer versions of Allegro seem to be deprecating and changing a lot of things.

I may recompile the latest releases of 2.60, and 2.56 that I have posted to the site to help alleviate this issue.
Title: Re: Undefined Symbol with AGS Linux 2.56-636
Post by: on Mon 13/09/2004 02:37:14
I'm not sure if it is the same problem, but the new version (2.61) of ags-linux prompted me:

$ ./ags
./ags: relocation error: ./ags: undefined symbol: _colorconv_rgb_scale_5x35

My distribution is Debian sid/unstable with Allegro 4.1.15 installed
$ apt-cache policy liballegro4.1
liballegro4.1:
  Installiert:2:4.1.15-4
  Mögliche Pakete:2:4.1.15-4