Trouble running Warzone 2100

Do you need help? Ask here!

Bug reporting belongs here: http://developer.wz2100.net/newticket
fizikz
New user
Posts: 4
Joined: 09 Feb 2009, 01:07

Trouble running Warzone 2100

Post by fizikz »

I've finally installed from source (after installation of many dependencies) the version 2.1.1 of Warzone2100 on my computer running Ubuntu 8.10. When I try to run the game I get:

Code: Select all

warzone2100: symbol lookup error: /usr/local/lib/libGLC.so.0: undefined symbol: FcInit
I didn't notice any errors, but some warnings when compiling. Any help?
stiv
Warzone 2100 Team Member
Warzone 2100 Team Member
Posts: 876
Joined: 18 Jul 2008, 04:41
Location: 45N 86W

Re: Trouble running Warzone 2100

Post by stiv »

The symbol FcInit appears to come from libfontconfig (/usrlib/libfontconfig.a on my opensuse box version 2.4.2). Maybe your libfontconfig is missing or needs to be updated? Do check the warnings for interesting tidbits!
fizikz
New user
Posts: 4
Joined: 09 Feb 2009, 01:07

Re: Trouble running Warzone 2100

Post by fizikz »

I have version 2.6.0-ubuntu of libfontconfig, and the latest version is 2.6.0 on fontconfig's website. The warning I get when doing './configure' is:

Code: Select all

configure: WARNING: Distributor unknown!
configure: Use --with-distributor when compiling package for distribution
stiv
Warzone 2100 Team Member
Warzone 2100 Team Member
Posts: 876
Joined: 18 Jul 2008, 04:41
Location: 45N 86W

Re: Trouble running Warzone 2100

Post by stiv »

Interesting.

Just for fun, first do
ldd $(which warzeon2100) | grep fontconfig

and then do (using whatever libfontconfig.so.* the prevous command found)
LD_PRELOAD=/usr/lib/libfontconfig.so.1 warzone2100
fizikz
New user
Posts: 4
Joined: 09 Feb 2009, 01:07

Re: Trouble running Warzone 2100

Post by fizikz »

The set of commands did not work. Here is the result of part of it, but there was no fontconfig-related file found by ldd.

Code: Select all

:~$ ldd /usr/local/bin/warzone2100
	linux-gate.so.1 =>  (0xb80c4000)
	libSDL-1.2.so.0 => /usr/lib/libSDL-1.2.so.0 (0xb8002000)
	libSDL_net-1.2.so.0 => /usr/lib/libSDL_net-1.2.so.0 (0xb7ffe000)
	libphysfs-1.0.so.0 => /usr/lib/libphysfs-1.0.so.0 (0xb7fed000)
	libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb7fc7000)
	libvorbisfile.so.3 => /usr/lib/libvorbisfile.so.3 (0xb7fbe000)
	libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0xb7f94000)
	libogg.so.0 => /usr/lib/libogg.so.0 (0xb7f8e000)
	libopenal.so.1 => /usr/lib/libopenal.so.1 (0xb7c4b000)
	libGLC.so.0 => /usr/local/lib/libGLC.so.0 (0xb7c25000)
	libGL.so.1 => /usr/lib/libGL.so.1 (0xb7b82000)
	libGLU.so.1 => /usr/lib/libGLU.so.1 (0xb7b11000)
	libpopt.so.0 => /lib/libpopt.so.0 (0xb7b07000)
	libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb7a19000)
	libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb79f3000)
	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb79e3000)
	libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7885000)
	libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb786c000)
	libX11.so.6 => /usr/lib/libX11.so.6 (0xb777d000)
	libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7779000)
	libpulse-simple.so.0 => /usr/lib/libpulse-simple.so.0 (0xb776b000)
	libpulse.so.0 => /usr/lib/libpulse.so.0 (0xb771a000)
	libdirectfb-1.0.so.0 => /usr/lib/libdirectfb-1.0.so.0 (0xb76b4000)
	libfusion-1.0.so.0 => /usr/lib/libfusion-1.0.so.0 (0xb76ab000)
	libdirect-1.0.so.0 => /usr/lib/libdirect-1.0.so.0 (0xb7696000)
	libz.so.1 => /usr/lib/libz.so.1 (0xb7680000)
	libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb7609000)
	/lib/ld-linux.so.2 (0xb80aa000)
	libGLcore.so.1 => /usr/lib/libGLcore.so.1 (0xb6892000)
	libnvidia-tls.so.1 => /usr/lib/tls/libnvidia-tls.so.1 (0xb6890000)
	libXext.so.6 => /usr/lib/libXext.so.6 (0xb6881000)
	libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0xb687e000)
	libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb6864000)
	libSM.so.6 => /usr/lib/libSM.so.6 (0xb685b000)
	libICE.so.6 => /usr/lib/libICE.so.6 (0xb6843000)
	libcap.so.1 => /lib/libcap.so.1 (0xb683f000)
	librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xb6836000)
	libXau.so.6 => /usr/lib/libXau.so.6 (0xb6832000)
	libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb682d000)
EDIT: I went ahead and tried the last command you gave (LD_PRELOAD=/usr/lib/libfontconfig.so.1 warzone2100) and this successfully launched the game! Thank you! Why is this library not being loaded normally, and what needs to be done to correct this? I previously had warzone installed from the package manager, so I uninstalled it just to make sure there is no confusion with the more recent one compiled from source. Yet, the version is still reported as 2.1.0 instead of 2.1.1. Is this an error?

EDIT2: Also, when quitting the game, the following errors can be seen in the terminal:

Code: Select all

AL lib: alSource.c:2291: alcDestroyContext(): 1 Source(s) NOT deleted
AL lib: alBuffer.c:1097: exit() 35 Buffer(s) NOT deleted
Also, in an unrelated issue, the graphics are flaky if I run the game while compiz-fusion is enabled. Turning compiz off allows the game to run normally. Without this, the screen will flash to black and often stays black. Is this a known issue? Using Compiz-Switch or Fusion-Icon to temporarily turn off compiz isn't so bad, but it would be nice if it weren't necessary to do so.
stiv
Warzone 2100 Team Member
Warzone 2100 Team Member
Posts: 876
Joined: 18 Jul 2008, 04:41
Location: 45N 86W

Re: Trouble running Warzone 2100

Post by stiv »

ldd $(which warzeon2100) | grep fontconfig
Heh. That would would better if I hadn't mispelled warzone. Still, I don't know why libfontconfig does not show up in the output from ldd.
Is this (compiz) a known issue?
Yeah, compiz and Aero, two compositing window managers, have become quite famous for their poor OpenGl support. Don't use them with OpenGL applications.
Yet, the version is still reported as 2.1.0 instead of 2.1.1. Is this an error?
A minor buglet. fixed in trunk.
fizikz
New user
Posts: 4
Joined: 09 Feb 2009, 01:07

Re: Trouble running Warzone 2100

Post by fizikz »

Still, I don't know why libfontconfig does not show up in the output from ldd.
Not only does it not show up, but it won't start without what I'm guessing is the manual pre-loading the library. Is there a way to fix that? I'd be surprised if I have a bug that nobody else does, but searches didn't help much, so far.
User avatar
Zarel
Elite
Elite
Posts: 5770
Joined: 03 Jan 2008, 23:35
Location: Minnesota, USA

Re: Trouble running Warzone 2100

Post by Zarel »

stiv wrote:A minor buglet. fixed in trunk.
You mean, fixed in 2.1-branch? I would hope trunk doesn't declare version 2.1.1. Anyway, 2.1-branch should be 2.1.2 by now. I'm used to changing the version number to, say, 2.1.2pre, right after 2.1.1 is released.
stiv
Warzone 2100 Team Member
Warzone 2100 Team Member
Posts: 876
Joined: 18 Jul 2008, 04:41
Location: 45N 86W

Re: Trouble running Warzone 2100

Post by stiv »

You mean, fixed in 2.1-branch?
Uh, yeah. Meant to say 'fixed in svn'. Obviously, my mind was confused by this bizarre ubuntu behavior and the similarities between the words 'svn' and 'trunk'