Gentoo AMD64

Discuss the Wing Commander Series and find the latest information on the Wing Commander Universe privateer mod as well as the standalone mod Wasteland Incident project.
Post Reply
Xan
Explorer
Explorer
Posts: 11
Joined: Thu Mar 10, 2005 6:50 pm

Gentoo AMD64

Post by Xan »

Hello,

I can't get Privateer 1.0 to work on Gentoo 2005.0 for AMD64. The installer drops back to the shell right after decompression. I'm able to extract the files and attempt to run the program anyway, but whichever way I try to run the vegastrike binary, I get an immediate segmentation fault.

I had better luck with this alternative installer; the game ran, but it was missing critical functionality (eg, the commodity exchange and ship merchant had no goods). I had to copy the vegastrike.config file from the original distribution to get that far.

I've got an Athlon 64 3000+, nforce3 chipset, GeForce 4400, 512MB RAM. The latest Gentoo packages as far as xorg, nvidia drivers, etc. Kernel 2.6.9-gentoo-r4.

I've posted this to the Privateer forums too.

Please help!
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

any chances that the archive file is messed up? maybe as simple as this...
Xan
Explorer
Explorer
Posts: 11
Joined: Thu Mar 10, 2005 6:50 pm

Post by Xan »

That's an interesting idea... I tried the new ebuild, and normally those verify MD5s, but maybe it didn't. I'm re-downloading now. I can't seem to find on the Privateer site what the correct MD5 is, but I'll be able to tell if it's different from my original file.
Xan
Explorer
Explorer
Posts: 11
Joined: Thu Mar 10, 2005 6:50 pm

Post by Xan »

Doesn't look like that's it. The new download and the file I've been working with both MD5 to 1c3eb237fca954bf03c1e06dd56ac340.
charlieg
Elite Mercenary
Elite Mercenary
Posts: 1329
Joined: Thu Mar 27, 2003 11:51 pm
Location: Manchester, UK
Contact:

Post by charlieg »

In this thread, somebody fixes an x86-64 problem by recompiling his nvidia drivers. I doubt it'll help here, but it's worth a shot just to eliminate it.
Xan
Explorer
Explorer
Posts: 11
Joined: Thu Mar 10, 2005 6:50 pm

Post by Xan »

charlieg wrote:In this thread, somebody fixes an x86-64 problem by recompiling his nvidia drivers. I doubt it'll help here, but it's worth a shot just to eliminate it.
It would be surprising if that worked, especially since I got the game to at least run with the Loki installer. Gave it a shot anyway, no luck... Remerged nvidia-kernel, nvidia-glx, and the emul-nvidia thing. Same story. I'm emerging world updates now, maybe that'll fix something, but I kind of doubt it.
charlieg
Elite Mercenary
Elite Mercenary
Posts: 1329
Joined: Thu Mar 27, 2003 11:51 pm
Location: Manchester, UK
Contact:

Post by charlieg »

I doubt it too. Do you have any kind of stacktrace or debugging output that might be useful?
Xan
Explorer
Explorer
Posts: 11
Joined: Thu Mar 10, 2005 6:50 pm

Post by Xan »

I hope I did this right...

Code: Select all

bash-2.05b$ gdb
GNU gdb 6.0
Copyright 2003 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-pc-linux-gnu".
(gdb) file /usr/share/games/privateer/bin/vegastrike
Reading symbols from /usr/share/games/privateer/bin/vegastrike...(no debugging symbols found)...done.
Using host libthread_db library "/lib/tls/libthread_db.so.1".
(gdb) run
Starting program: /usr/share/games/privateer/bin/vegastrike
Warning:
Cannot insert breakpoint -2.
Error accessing memory address 0xbbb0: Input/output error.

(gdb)

Code: Select all

bash-2.05b$ strace ./vegastrike
execve("./vegastrike", ["./vegastrike"], [/* 57 vars */]) = 0
[ Process PID=11035 runs in 32 bit mode. ]
uname({sys="Linux", node="xbox", ...})  = 0
brk(0)                                  = 0x947f000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(0x3, 0xffffc64c)                = 0
mmap2(NULL, 105810, PROT_READ, MAP_SHARED, 2, 0x3) = 0x5556c000
close(3)                                = 0
open("/usr/lib32/opengl/nvidia/lib/libGL.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200U\2"..., 512) = 512
fstat64(0x3, 0xffffc6c0)                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 34, 0xffffffff) = 0x55586000
mmap2(NULL, 447840, PROT_READ|PROT_EXEC, 0x5 /* MAP_??? */, 2050, 0x3) = 0x55587000
mmap2(0x555e4000, 65536, PROT_READ|PROT_WRITE|PROT_EXEC, 0x7 /* MAP_??? */, 2066, 0x3) = 0x555e4000
mmap2(0x555f4000, 1376, PROT_READ|PROT_WRITE|PROT_EXEC, 0x7 /* MAP_??? */, 50, 0xffffffff) = 0x555f4000
close(3)                                = 0
open("/lib32/libdl.so.2", O_RDONLY)     = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\v\0"..., 512) = 512
fstat64(0x3, 0xffffc6a4)                = 0
mmap2(NULL, 12392, PROT_READ|PROT_EXEC, 0x5 /* MAP_??? */, 2050, 0x3) = 0x555f5000
mmap2(0x555f7000, 8192, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 2066, 0x3) = 0x555f7000
close(3)                                = 0
open("/lib32/tls/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`H\0\000"..., 512) = 512
fstat64(0x3, 0xffffc688)                = 0
mmap2(NULL, 74224, PROT_READ|PROT_EXEC, 0x5 /* MAP_??? */, 2050, 0x3) = 0x555f9000
mprotect(0x55607000, 16880, PROT_NONE)  = 0
mmap2(0x55608000, 8192, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 2066, 0x3) = 0x55608000
mmap2(0x5560a000, 4592, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 50, 0xffffffff) = 0x5560a000
close(3)                                = 0
open("/lib32/tls/libc.so.6", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360P\1"..., 512) = 512
fstat64(0x3, 0xffffc66c)                = 0
mmap2(NULL, 1142060, PROT_READ|PROT_EXEC, 0x5 /* MAP_??? */, 2050, 0x3) = 0x5560c000
mmap2(0x5571d000, 16384, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 2066, 0x3) = 0x5571d000
mmap2(0x55721000, 7468, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 50, 0xffffffff) = 0x55721000
close(3)                                = 0
open("/emul/linux/x86/usr/lib/libX11.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\21\1"..., 512) = 512
fstat64(0x3, 0xffffc650)                = 0
mmap2(NULL, 829304, PROT_READ|PROT_EXEC, 0x5 /* MAP_??? */, 2050, 0x3) = 0x55723000
mmap2(0x557eb000, 12288, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 2066, 0x3) = 0x557eb000
close(3)                                = 0
open("/emul/linux/x86/usr/lib/libXext.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 )\0\000"..., 512) = 512
fstat64(0x3, 0xffffc634)                = 0
mmap2(NULL, 61204, PROT_READ|PROT_EXEC, 0x5 /* MAP_??? */, 2050, 0x3) = 0x557ee000
mmap2(0x557fc000, 4096, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 2066, 0x3) = 0x557fc000
close(3)                                = 0
open("/lib32/tls/libm.so.6", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p3\0\000"..., 512) = 512
fstat64(0x3, 0xffffc618)                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 34, 0xffffffff) = 0x557fd000
mmap2(NULL, 139424, PROT_READ|PROT_EXEC, 0x5 /* MAP_??? */, 2050, 0x3) = 0x557fe000
mmap2(0x5581f000, 8192, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 2066, 0x3) = 0x5581f000
close(3)                                = 0
open("/usr/lib32/opengl/nvidia/lib/libGLcore.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\267\n"..., 512) = 512
fstat64(0x3, 0xffffc578)                = 0
mmap2(NULL, 7276776, PROT_READ|PROT_EXEC, 0x5 /* MAP_??? */, 2050, 0x3) = 0x55821000
mmap2(0x55ee2000, 114688, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 2066, 0x3) = 0x55ee2000
mmap2(0x55efe000, 80104, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 50, 0xffffffff) = 0x55efe000
close(3)                                = 0
open("/usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@\3\0\000"..., 512) = 512
lseek(3, 1304, SEEK_SET)                = 1304
read(3, "\4\0\0\0\20\0\0\0\1\0\0\0GNU\0\0\0\0\0\2\0\0\0\2\0\0\0"..., 32) = 32
fstat64(0x3, 0xffffc55c)                = 0
mmap2(NULL, 5588, PROT_READ|PROT_EXEC, 0x5 /* MAP_??? */, 2050, 0x3) = 0x55f12000
mmap2(0x55f13000, 4096, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 2066, 0x3) = 0x55f13000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, 0x3 /* MAP_??? */, 34, 0xffffffff) = 0x55f14000
mprotect(0x55f12000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x55f12000, 4096, PROT_READ|PROT_EXEC) = 0
mprotect(0x55821000, 7081984, PROT_READ|PROT_WRITE) = 0
mprotect(0x55821000, 7081984, PROT_READ|PROT_EXEC) = 0
mprotect(0x5571d000, 4096, PROT_READ)   = 0
mprotect(0x55587000, 380928, PROT_READ|PROT_WRITE) = 0
mprotect(0x55587000, 380928, PROT_READ|PROT_EXEC) = 0
set_thread_area(0xffffcd18)             = 0
munmap(0x5556c000, 105810)              = 0
set_tid_address(0x55f14988)             = 11035
rt_sigaction(SIGRTMIN, {0x4555fd3d0, [], SA_RESTART|SA_NOMASK|0x55867c8}, NULL, 0) = 0
rt_sigaction(SIGRT_1, {0x10000004555fd450, [], SA_RESTART|SA_NOMASK|0x55867c8}, NULL, 0) = 0
rt_sigprocmask(SIG_UNBLOCK, [], NULL, 0) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=-4286578688, rlim_max=0}) = 0
Segmentation fault
bash-2.05b$
hellcatv
Developer
Developer
Posts: 3980
Joined: Fri Jan 03, 2003 4:53 am
Location: Stanford, CA
Contact:

Post by hellcatv »

odd! it seems to die the minute it loads nvidia's drivers...
do other opengl apps like glxgears do ok? must have something to do with a 32 bit vs 64 bit binding?!
Vega Strike Lead Developer
http://vegastrike.sourceforge.net/
Xan
Explorer
Explorer
Posts: 11
Joined: Thu Mar 10, 2005 6:50 pm

Post by Xan »

No problem with glxgears, although it's a 64-bit app like everything else on the system. It certainly makes sense that it's a 64 vs 32 problem, but obviously I couldn't say what exactly that would be.

I did get much farther (as in, the game actually ran) using this installer. Bobby Z, who put together the ebuild, told me that the alternate installer used a different build of the source code. That's got to be significant!

Let me know if there's anything else you need me to do.
hellcatv
Developer
Developer
Posts: 3980
Joined: Fri Jan 03, 2003 4:53 am
Location: Stanford, CA
Contact:

Post by hellcatv »

does everything work? make sure the data itself is the same as with the old installer
Vega Strike Lead Developer
http://vegastrike.sourceforge.net/
Xan
Explorer
Explorer
Posts: 11
Joined: Thu Mar 10, 2005 6:50 pm

Post by Xan »

I had tried this before by moving the .config file into the installation left by the new installer, but it left the game unplayable.

But you got me to thinking that the only way to make sure ALL the data is the same is just to move the vegastrike binary from the new installer into the old installer's directory. Works like a charm!! Thank you!

The other binary is ~7MB versus ~13MB too.
Xan
Explorer
Explorer
Posts: 11
Joined: Thu Mar 10, 2005 6:50 pm

Spoke too soon

Post by Xan »

Just about everything is working perfectly, in fact I stayed up way too late playing last night. I just discovered, however, that Oxford is broken. When I land there, I see the pretty picture of the landing area and the Oxford music plays, but I can't mouse anywhere that's active (even with right-click). I can't take the train, and I can't launch, which means I have to kill the game. :(

Do you think this is a problem with the binary I'm using, the Privateer data files, both, neither?
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Are you using the WCU patch or the real Priv?


btw hellcat, tortoise seems to do it for me :) i THINK i uploaded the code files with CVS okay....
Xan
Explorer
Explorer
Posts: 11
Joined: Thu Mar 10, 2005 6:50 pm

Post by Xan »

Everything's from the regular Privateer installer, except for the vegastrike binary which I took from the other installer that somebody made.

I tried using the replacement soundserver too, but it didn't make any difference.
Xan
Explorer
Explorer
Posts: 11
Joined: Thu Mar 10, 2005 6:50 pm

Post by Xan »

New Detroit too... I can get down to Main Street, but from there I can't go anywhere (including back to the pad). GlaDiaC released a new version of his Loki installer, and I tried the binary from that, but it didn't help.
Xan
Explorer
Explorer
Posts: 11
Joined: Thu Mar 10, 2005 6:50 pm

Post by Xan »

Update: hellcatv has resolved this for me with a small change in some of the Python code. The patch has been applied to the codebase.
Post Reply