Running On 64 bits computers

Do you need help? Ask here!

Bug reporting belongs here: http://developer.wz2100.net/newticket
Feisty
Greenhorn
Posts: 6
Joined: 01 Jul 2007, 21:48

Running On 64 bits computers

Post by Feisty »

I own a 64 bit computer (linux) and I want to be able to run warzone 2100

I know 3 solutions:
1 Compile in 32 bit modus: This requires me to compile several libs in 32 bit modus (I don't like this, and I don't know how to enable 32 bit modus) (Vorbis, Openal, physfs, maybe vorbis - others are provided by ubuntu -)
2 Run a compiled 32 bit program: same as 1
3 Compile Warzone2100 in 64 bit modus: this seems impossible for know (It was succesfull after some Makefile changes, but crashes at startup)


So what is the best -easiest- solution?
User avatar
kage
Regular
Regular
Posts: 751
Joined: 05 Dec 2006, 21:45

Re: Running On 64 bits computers

Post by kage »

i've compiled and successfully run a 64-bit version of wz on debian amd64, though it tended to segfault a few minutes into any game. however, that was at least 6 months ago, and 64-bit support may be better (or worse) now.
cybersphinx
Inactive
Inactive
Posts: 1695
Joined: 01 Sep 2006, 19:17

Re: Running On 64 bits computers

Post by cybersphinx »

Set up a 32 bit environment, that's probably the easiest solution. The best is to fix Warzone to work with 64 bit.
We want information... information... information.
User avatar
DevUrandom
Regular
Regular
Posts: 1690
Joined: 31 Jul 2006, 23:14

Re: Running On 64 bits computers

Post by DevUrandom »

Some people are using the trunk on 64bit machines and it seems to work, mostly.
User avatar
Watermelon
Code contributor
Code contributor
Posts: 551
Joined: 08 Oct 2006, 09:37

Re: Running On 64 bits computers

Post by Watermelon »

I assume you are running ubuntu 64 7.04 feisty,since your nick is self-explanatory.

I have compiled the trunk under ubuntu 64 7.04 feisty with no changes to makefile,seems to be pretty stable except a totally broken mp.
tasks postponed until the trunk is relatively stable again.
Feisty
Greenhorn
Posts: 6
Joined: 01 Jul 2007, 21:48

Re: Running On 64 bits computers

Post by Feisty »

Watermelon wrote: I assume you are running ubuntu 64 7.04 feisty,since your nick is self-explanatory.

I have compiled the trunk under ubuntu 64 7.04 feisty with no changes to makefile,seems to be pretty stable except a totally broken mp.
MP = MultiPlayer?

And is it broken because of 64 bit or because of trunk?
Anyway I don't care that multiplayer is broken, since I'm not planning to play Multiplayer (yet)
Feisty
Greenhorn
Posts: 6
Joined: 01 Jul 2007, 21:48

Re: Running On 64 bits computers

Post by Feisty »

It seems that everything is broken (revision 1999):

Campaign: It crashes before I could build domething
Tutorial: No new messages after "You are ready for your first mission" (or is that the last message?)
User avatar
Watermelon
Code contributor
Code contributor
Posts: 551
Joined: 08 Oct 2006, 09:37

Re: Running On 64 bits computers

Post by Watermelon »

yes mp = multiplayer,havent tried 1999,the one I used was just few revisions from 1999(14xx before the revision history merge,the merge increased rev count by 500 or so)

the broken mp is because of 64 bit.
tasks postponed until the trunk is relatively stable again.
Giel
Regular
Regular
Posts: 725
Joined: 26 Dec 2006, 19:18

Re: Running On 64 bits computers

Post by Giel »

Watermelon wrote: the merge increased rev count by 500 or so)
Actually it's 358 to be precise.
"First make sure it works good, only then make it look good." -- Giel
Want to tip/donate? bitcoin:1EaqP4ZPMvUffazTxm7stoduhprzeabeFh
Feisty
Greenhorn
Posts: 6
Joined: 01 Jul 2007, 21:48

Re: Running On 64 bits computers

Post by Feisty »

The crash in revsion 1999 seemsto be on the moment I'm under attack

The debug info:

Code: Select all

Program: /usr/local/bin/warzone2100
Version: TRUNK
Type: Release
Compiled on: Jul  2 2007
Executed on: Mon Jul  2 15:43:19 2007


Operating system: Linux
Node name: nathan-laptop
Release: 2.6.20-16-generic
Version: #2 SMP Thu Jun 7 19:00:28 UTC 2007
Machine: x86_64

Pointers: 64bit

Dump caused by signal: SIGSEGV: Invalid memory reference: Address not mapped to object

GLIBC raw backtrace:
warzone2100[0x5273bb]
/lib/libc.so.6[0x2b8449912d40]
/usr/lib/libopenal.so.0[0x2b844908693c]
/usr/lib/libopenal.so.0[0x2b844907c0eb]
/usr/lib/libopenal.so.0[0x2b8449076120]
/usr/lib/libopenal.so.0[0x2b8449077f34]
/usr/lib/libopenal.so.0[0x2b844907907a]
/usr/lib/libopenal.so.0[0x2b8449080c2b]
/lib/libpthread.so.0[0x2b844acb82a5]
/lib/libc.so.6(clone+0x6d)[0x2b84499b161d]

GDB extended backtrace:
GNU gdb 6.6-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu"...
Using host libthread_db library "/lib/libthread_db.so.1".
Attaching to program: /usr/local/bin/warzone2100, process 12261
Reading symbols from /usr/lib/libphysfs-1.0.so.0...done.
Loaded symbols for /usr/lib/libphysfs-1.0.so.0
Reading symbols from /usr/lib/libpng12.so.0...done.
Loaded symbols for /usr/lib/libpng12.so.0
Reading symbols from /lib/libm.so.6...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /usr/lib/libSDL-1.2.so.0...done.
Loaded symbols for /usr/lib/libSDL-1.2.so.0
Reading symbols from /usr/lib/libSDL_net-1.2.so.0...done.
Loaded symbols for /usr/lib/libSDL_net-1.2.so.0
Reading symbols from /usr/lib/libGL.so.1...done.
Loaded symbols for /usr/lib/libGL.so.1
Reading symbols from /usr/lib/libGLU.so.1...done.
Loaded symbols for /usr/lib/libGLU.so.1
Reading symbols from /usr/lib/libopenal.so.0...done.
Loaded symbols for /usr/lib/libopenal.so.0
Reading symbols from /usr/lib/libvorbisfile.so.3...done.
Loaded symbols for /usr/lib/libvorbisfile.so.3
Reading symbols from /usr/lib/libvorbis.so.0...done.
Loaded symbols for /usr/lib/libvorbis.so.0
Reading symbols from /usr/lib/libogg.so.0...done.
Loaded symbols for /usr/lib/libogg.so.0
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /usr/lib/libX11.so.6...done.
Loaded symbols for /usr/lib/libX11.so.6
Reading symbols from /usr/lib/libz.so.1...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /usr/lib/libasound.so.2...done.
Loaded symbols for /usr/lib/libasound.so.2
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /usr/lib/libdirectfb-0.9.so.25...done.
Loaded symbols for /usr/lib/libdirectfb-0.9.so.25
Reading symbols from /usr/lib/libfusion-0.9.so.25...done.
Loaded symbols for /usr/lib/libfusion-0.9.so.25
Reading symbols from /usr/lib/libdirect-0.9.so.25...done.
Loaded symbols for /usr/lib/libdirect-0.9.so.25
Reading symbols from /lib/libpthread.so.0...done.
[Thread debugging using libthread_db enabled]
[New Thread 47847208693648 (LWP 12261)]
[New Thread 1090525504 (LWP 12297)]
[New Thread 1082132800 (LWP 12296)]
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /usr/lib/libXext.so.6...done.
Loaded symbols for /usr/lib/libXext.so.6
Reading symbols from /usr/lib/libXxf86vm.so.1...done.
Loaded symbols for /usr/lib/libXxf86vm.so.1
Reading symbols from /usr/lib/libdrm.so.2...done.
Loaded symbols for /usr/lib/libdrm.so.2
Reading symbols from /usr/lib/libstdc++.so.6...done.
Loaded symbols for /usr/lib/libstdc++.so.6
Reading symbols from /lib/libgcc_s.so.1...done.
Loaded symbols for /lib/libgcc_s.so.1
Reading symbols from /lib/ld-linux-x86-64.so.2...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /usr/lib/libXau.so.6...done.
Loaded symbols for /usr/lib/libXau.so.6
Reading symbols from /usr/lib/libXdmcp.so.6...done.
Loaded symbols for /usr/lib/libXdmcp.so.6
Reading symbols from /usr/lib/libXrender.so.1...done.
Loaded symbols for /usr/lib/libXrender.so.1
Reading symbols from /usr/lib/libXrandr.so.2...done.
Loaded symbols for /usr/lib/libXrandr.so.2
Reading symbols from /usr/lib/libXcursor.so.1...done.
Loaded symbols for /usr/lib/libXcursor.so.1
Reading symbols from /usr/lib/libXfixes.so.3...done.
Loaded symbols for /usr/lib/libXfixes.so.3
Reading symbols from /usr/lib/gconv/ISO8859-1.so...done.
Loaded symbols for /usr/lib/gconv/ISO8859-1.so
Reading symbols from /usr/lib/dri/i915_dri.so...done.
Loaded symbols for /usr/lib/dri/i915_dri.so
Reading symbols from /usr/lib/libexpat.so.1...done.
Loaded symbols for /usr/lib/libexpat.so.1
Reading symbols from /lib/libnss_compat.so.2...done.
Loaded symbols for /lib/libnss_compat.so.2
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /lib/libnss_nis.so.2...done.
Loaded symbols for /lib/libnss_nis.so.2
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
0x00002b8449977b2f in waitpid () from /lib/libc.so.6
(gdb) #0  0x00002b8449977b2f in waitpid () from /lib/libc.so.6
No symbol table info available.
#1  0x00000000005277f3 in posixExceptionHandler (signum=11, 
    siginfo=<value optimized out>, sigcontext=<value optimized out>)
    at exceptionhandler.c:507
	btBuffer = {0x5273bb, 0x2b8449912d40, 0x2aaaaacef7e0, 0x2aaaaacf04ba, 
  0x2aaaaacf0afd, 0x2aaaaad11bce, 0x2aaaaadc1d3e, 0x2aaaaadbb2f3, 
  0x2aaaaae473f8, 0x51a5bf, 0x51a79c, 0x4175f4, 0x4184f1, 0x4b3179, 0x4b56e8, 
  0x4b9e27, 0x4bab1c, 0x42420f, 0x45d29c, 0x45e357}
	pid = 12556
	gdbPipe = {11, 12}
	dumpFile = 10
	allreadyRunning = 1
#2  <signal handler called>
No symbol table info available.
#3  0x00002aaaaacef7e0 in ?? () from /usr/lib/dri/i915_dri.so
No symbol table info available.
#4  0x00002aaaaacf04ba in ?? () from /usr/lib/dri/i915_dri.so
No symbol table info available.
#5  0x00002aaaaacf0afd in i915UpdateTextureState ()
   from /usr/lib/dri/i915_dri.so
No symbol table info available.
#6  0x00002aaaaad11bce in ?? () from /usr/lib/dri/i915_dri.so
No symbol table info available.
#7  0x00002aaaaadc1d3e in _tnl_flush_vtx () from /usr/lib/dri/i915_dri.so
No symbol table info available.
#8  0x00002aaaaadbb2f3 in _tnl_FlushVertices () from /usr/lib/dri/i915_dri.so
No symbol table info available.
#9  0x00002aaaaae473f8 in _mesa_set_enable () from /usr/lib/dri/i915_dri.so
No symbol table info available.
#10 0x000000000051a5bf in pie_Draw3DShape2 (shape=0x6f0ce80, frame=0, colour=
      {byte = {b = 252 'ü', g = 252 'ü', r = 252 'ü', a = 255 'ÿ'}, argb = 4294769916}, specular=
      {byte = {b = 0 '\0', g = 0 '\0', r = 0 '\0', a = 0 '\0'}, argb = 0}, 
    pieFlag=128, pieFlagData=<value optimized out>) at piedraw.c:238
	tempY = <value optimized out>
	n = <value optimized out>
	pVertices = <value optimized out>
	pPolys = <value optimized out>
	index = <value optimized out>
	light = 1
#11 0x000000000051a79c in pie_Draw3DShape (shape=0x6f0ce80, frame=0, 
    team=<value optimized out>, col=<value optimized out>, spec=0, 
    pieFlag=<value optimized out>, pieFlagData=0) at piedraw.c:800
	colour = {byte = {b = 252 'ü', g = 252 'ü', r = 252 'ü', 
    a = 255 'ÿ'}, argb = 4294769916}
	specular = {byte = {b = 7 '\a', g = 0 '\0', r = 0 '\0', a = 0 '\0'}, 
  argb = 7}
#12 0x00000000004175f4 in displayCompObj (psObj=0x78efca0, bButton=0)
    at component.c:943
	psDroid = <value optimized out>
	psShape = <value optimized out>
	psJet = <value optimized out>
	psShapeTemp = (iIMDShape *) 0x0
	zero = {x = 0, y = 0, z = 0}
	screenCoords = {x = 269, y = 317}
	iConnector = <value optimized out>
	psPropStats = <value optimized out>
	pieFlag = 128
	iPieData = 0
	brightness = 4294769916
	specular = 0
	colour = 0
	i = <value optimized out>
	__FUNCTION__ = "displayCompObj"
#13 0x00000000004184f1 in displayComponentObject (psObj=0xec2c10)
    at component.c:839
	psDroid = (DROID *) 0x78efca0
	difference = <value optimized out>
	frame = <value optimized out>
	tileX = <value optimized out>
	tileY = <value optimized out>
#14 0x00000000004b3179 in renderDroid (psDroid=0xec2c10) at display3d.c:2666
No locals.
#15 0x00000000004b56e8 in displayDynamicObjects () at display3d.c:1550
	psDroid = (DROID *) 0x78efca0
	psAnimObj = <value optimized out>
#16 0x00000000004b9e27 in drawTiles (camera=0x3f, player=0x3ce88)
    at display3d.c:863
	i = 63
	j = 4294957699
	zMax = <value optimized out>
	psTile = (MAPTILE *) 0x3f
	edgeX = 64
	edgeY = 63
	bWaterTile = 0
	PushedDown = <value optimized out>
	TileIllum = 64 '@'
	shiftVal = 0
	numTilesAveraged = 961
	angle = 6.71005869
	__FUNCTION__ = "drawTiles"
#17 0x00000000004bab1c in draw3DScene () at display3d.c:507
	bPlayerHasHQ = <value optimized out>
#18 0x000000000042420f in displayWorld () at display.c:1503
	pos = {x = 8, y = 0, z = 0}
#19 0x000000000045d29c in gameLoop () at loop.c:542
	psCurr = <value optimized out>
	psNext = (DROID *) 0x0
	psCBuilding = <value optimized out>
	psNBuilding = (STRUCTURE *) 0x0
	psCFeat = <value optimized out>
	psNFeat = <value optimized out>
	i = 7
	widgval = <value optimized out>
	quitting = 0
	intRetVal = INT_NONE
	clearMode = <value optimized out>
	__FUNCTION__ = "gameLoop"
#20 0x000000000045e357 in main (argc=<value optimized out>, 
    argv=<value optimized out>) at main.c:524
	psPaletteBuffer = <value optimized out>
	pSize = 768
(gdb) The program is running.  Quit anyway (and detach it)? (y or n) [answered Y; input not from terminal]
Detaching from program: /usr/local/bin/warzone2100, process 12261
Giel
Regular
Regular
Posts: 725
Joined: 26 Dec 2006, 19:18

Re: Running On 64 bits computers

Post by Giel »

Feisty wrote: The crash in revsion 1999 seemsto be on the moment I'm under attack
Does this happen in campaign? As soon as you shoot at/get shot by the scavengers (those little people running towards your base)?
"First make sure it works good, only then make it look good." -- Giel
Want to tip/donate? bitcoin:1EaqP4ZPMvUffazTxm7stoduhprzeabeFh
Feisty
Greenhorn
Posts: 6
Joined: 01 Jul 2007, 21:48

Re: Running On 64 bits computers

Post by Feisty »

Giel wrote: Does this happen in campaign? As soon as you shoot at/get shot by the scavengers (those little people running towards your base)?
Yes
User avatar
Watermelon
Code contributor
Code contributor
Posts: 551
Joined: 08 Oct 2006, 09:37

Re: Running On 64 bits computers

Post by Watermelon »

I'll check out r1999 and see if I have the same problem or not.

edit:confirmed the problem.I'll look into this.
Last edited by Watermelon on 02 Jul 2007, 17:58, edited 1 time in total.
tasks postponed until the trunk is relatively stable again.
User avatar
DevUrandom
Regular
Regular
Posts: 1690
Joined: 31 Jul 2006, 23:14

Re: Running On 64 bits computers

Post by DevUrandom »

That backtrace is weird... GLibC says it crashed in OpenAL, while GDB says it crashed in OpenGL... Who's correct now?

Some versions of the free OpenAL implementation are somewhat buggy. Namely this is 0.0.8, but maybe also others.
Is it, now that Gentoo patched it, Ubuntu arrives at the buggy version?
(That bug shows up when the scavengers first shoot at you. For Gentoo users updating to openal-0.0.8-r1 usually helped.)
Feisty
Greenhorn
Posts: 6
Joined: 01 Jul 2007, 21:48

Re: Running On 64 bits computers

Post by Feisty »

DevUrandom wrote: That backtrace is weird... GLibC says it crashed in OpenAL, while GDB says it crashed in OpenGL... Who's correct now?

Some versions of the free OpenAL implementation are somewhat buggy. Namely this is 0.0.8, but maybe also others.
Is it, now that Gentoo patched it, Ubuntu arrives at the buggy version?
(That bug shows up when the scavengers first shoot at you. For Gentoo users updating to openal-0.0.8-r1 usually helped.)
When I disable effect-sounds it doesn't crash anymore (at least not at that point)
Result is that I don't hear shouting etc anymore (but that is expected)