Show Posts


Messages - NullNix

Pages: [1]
VVVVVV Tech Support / Re: Missing Linux Libraries
« on: July 29, 2011, 04:44:37 PM »
Quite so. The soname link problem is present in both the 32-bit and (old) 64-bit library directories. It is still present in the 32-bit library directory.

You can do tricks with tiny chroots and ldd(1) to make sure you have total library coverage (excepting, probably, glibc, Mesa and the X11 libraries, I think we can assume that people have a compatible version of those, since they haven't broken ABI compatibility since the 80s or 90s): I can provide a recipe if you wish.

VVVVVV Tech Support / Re: Linux packaging problems, and a coredump
« on: July 28, 2011, 04:12:25 AM »
The libraries are better, but still depend on libjpeg's soname is markedly unstable, and has jumped through 7 to 8 in recent years. Distros are using all three :( :( :( so probably shipping a copy of that too would be worthwhile. Easily fixed for me by just moving your copy of out of the way and letting VVVVVV pick up my system copy.

(The coredump looks like it's fixed, but it's quite intermittent, so it's hard to be sure.)

VVVVVV Tech Support / Linux packaging problems, and a coredump
« on: July 27, 2011, 02:48:09 PM »
The following problems prevent usage of the bundled libraries in the Linux humble bundle version.

1) the 64-bit library directory is called LIBS64, but the VVVVV script is looking for LIB64. Solution obvious, rename it.

2) both the LIBS32 and LIBS64 library directories only include the actual libraries (e.g. but not the sonamed symlinks by which the dynamic linker looks for them (e.g. libSDL-1.2.0). readelf -d VVVVV_* LIB*/*.so* | grep NEEDED will tell you the symlink names to use.

Unfortunately I can't then use the bundled libraries -- at least not all of them -- because libmikmod bumped soname to an enormously long time ago (pre-2005) when libmikmod 3.2 was released, but your code depends on (probably because Debian is still on libmikmod 3.1.x).

I sometimes get a coredump when using teleporters. This backtrace is using my system copy of libSDL, since yours is stripped. It's not terribly useful since VVVVVV_64 is also stripped, but for what it's worth:

#0  0x00007f09e45dbdfa in SDL_memcpySSE (info=<value optimized out>) at ./src/video/SDL_blit.c:141
#1  SDL_BlitCopy (info=<value optimized out>) at ./src/video/SDL_blit.c:172
#2  0x00007f09e45dbc06 in SDL_SoftBlit (src=0x2541820, srcrect=<value optimized out>, dst=0x194a480, dstrect=0x7fffb1e9ad00) at ./src/video/SDL_blit.c:97
#3  0x00007f09e45f149c in SDL_LowerBlit (src=0x2541820, srcrect=0x7fffb1e9ac30, dst=<value optimized out>, dstrect=<value optimized out>) at ./src/video/SDL_surface.c:440
#4  0x00007f09e45f16cc in SDL_UpperBlit (src=<value optimized out>, srcrect=<value optimized out>, dst=<value optimized out>, dstrect=<value optimized out>) at ./src/video/SDL_surface.c:530
#5  0x00000000004497e3 in ?? ()
#6  0x000000000067f6fa in ?? ()
#7  0x00000000006a690d in ?? ()
#8  0x00007f09e3ae5d6d in __libc_start_main () from /lib/
#9  0x0000000000404409 in ?? ()
#10 0x00007fffb1e9c968 in ?? ()
#11 0x000000000000001c in ?? ()
#12 0x0000000000000001 in ?? ()
#13 0x00007fffb1e9e210 in ?? ()
#14 0x0000000000000000 in ?? ()

Pages: [1]