PDA

Показать полную графическую версию : Quake I


Страниц : [1] 2

spoon
05-03-2003, 20:40
скачал бинарники кваки1 под линукс, установил в папку с кваком... запускаю...
bash: ./squake: Нет такого файла или каталога
пишет файл не найден... капец... файл ессно имеется... в чём трабла....?

Barracuda
05-03-2003, 21:22
spoon
это говорит о том, что интерпретатор для исполнения этого кода не найден. Посмотрите, что это за файл(бинарник elf, a.out) через file <file_name> и потм будем дальше думать.

glassMonk
06-03-2003, 06:08
Парниша тут экспортировали уже quake 3. Читай чиже в форуме. ез проблем устанавливается.

ruslandh
06-03-2003, 07:22
spoon
Когда я настраивал вторую Кваку, мне потребовались файлы от Win версии.
PS Желательно полное сообщение, а так, как Вы описали - полностью согласен с  Barracuda. А права на выполнение у файла есть ?

Guest
06-03-2003, 19:37
у тебя нет необходимых дров (скорее всего SVGA Lib)
Качай QuakeForge и не мучайся

Guest
22-03-2003, 16:35
права на выполенение у файла есть... и чмод стоит соответсвенный , да и под рутом я....
с 3-ой квакой никаких проблем... вот тока пока с первой... 2ую пока не ставил...
ессно файлы от вин-версии есть полностью...
--------------
file glquake
glquake: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), stripped
--
чё за хрень то...?
у когонить такие же траблы были....?

Barracuda
22-03-2003, 18:40
Guest
Вы этого, смотрите выше. Т.е. вы показали только результат работы file, а надо будет ещё и через readelf -a glquake | less посмотреть, какой там интерпретатор. Скорее всего его надо будет брать из старых версий Линукса.

Guest
23-03-2003, 05:47
ELF Header:
 Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
 Class:                             ELF32
 Data:                              2's complement, little endian
 Version:                           1 (current)
 OS/ABI:                            UNIX - System V
 ABI Version:                       0
 Type:                              EXEC (Executable file)
 Machine:                           Intel 80386
 Version:                           0x1
 Entry point address:               0x804a600
 Start of program headers:          52 (bytes into file)
 Start of section headers:          404572 (bytes into file)
 Flags:                             0x0
 Size of this header:               52 (bytes)
 Size of program headers:           32 (bytes)
 Number of program headers:         5
 Size of section headers:           40 (bytes)
 Number of section headers:         21
 Section header string table index: 20
----------
и чё из этого следует..???

Добавлено:

и дайте линк на QuakeForge под линем.... !!!

Barracuda
23-03-2003, 09:06
Плохо смотрим:
Dynamic segment at offset 0x603c contains 21 entries:
*Tag * * * *Type * * * * * * * * * * * * Name/Value
0x00000001 (NEEDED) * * * * * * * * * * Shared library: [libacl.so.1]
0x00000001 (NEEDED) * * * * * * * * * * Shared library: [libc.so.6]
Вот, что надо искать.

Для ясности:
$ readelf -a /bin/rm | grep NEEDED
0x00000001 (NEEDED) * * * * * * * * * * Shared library: [libacl.so.1]
0x00000001 (NEEDED) * * * * * * * * * * Shared library: [libc.so.6]
$
Ну, ессно, вместо /bin/rm свой файлик подставляем :)

Исправлено: Barracuda, 9:13 23-03-2003

Guest
23-03-2003, 09:14
так как это применить... чё мне делать то...?


Добавлено:

команда показала:
0x00000001 (NEEDED)                     Shared library: [libc.so.6]

Barracuda
23-03-2003, 09:25
Посмотрите ещё по такой фразе, как interpreter (как-то так он там назывался). В старых elf'овских бинарниках требовался коммандный интерпретатор из старых библиотек.
Вот, что ещё нужно поискать:
Requesting program interpreter: /lib/ld-linux.so.2
Если такового в системе нет - ищите в старых дисрибутивах.

Guest
23-03-2003, 09:44
окончательно запутали....
а  /lib/ld-linux.so.2 у меня есть.... !

Barracuda
23-03-2003, 10:05
Guest
Да не в этом дело. Вот полный дамп (точнее, кусочек, т.к. полный дам сбда помещать бессмысленно - флуд получится):
Program Headers:
 Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
 PHDR           0x000034 0x08048034 0x08048034 0x000c0 0x000c0 R E 0x4
 INTERP         0x0000f4 0x080480f4 0x080480f4 0x00013 0x00013 R   0x1
     [Requesting program interpreter: /lib/ld-linux.so.2]
 LOAD           0x000000 0x08048000 0x08048000 0x05f4f 0x05f4f R E 0x1000
 LOAD           0x006000 0x0804e000 0x0804e000 0x00204 0x00648 RW  0x1000
 DYNAMIC        0x00603c 0x0804e03c 0x0804e03c 0x000d0 0x000d0 RW  0x4
 NOTE           0x000108 0x08048108 0x08048108 0x00020 0x00020 R   0x4

Section to Segment mapping:
 Segment Sections...

Это дано в какчестве примера. Дык вот, как видите, тама есть строчка, которая указывает на используемый интерпретатор (Requesting program interpreter:). В данном случае это результат readelf для /bin/rm и интерпретатор есть в системе. Сделайте тоже самое для своей прогои (glquake, если я не ошибаюсь) и посмотрите, какой интерпретатор она требует. Если такого нет, то его надо будет добавить.

Guest
23-03-2003, 10:15
readelf -a /mnt/gamez/gamezzz/quake/glquake | grep NEEDED
0x00000001 (NEEDED)                     Shared library: [libm.so.5]
0x00000001 (NEEDED)                     Shared library: [libMesaGL.so.2]
0x00000001 (NEEDED)                     Shared library: [libglide2x.so]
0x00000001 (NEEDED)                     Shared library: [libX11.so.6]
0x00000001 (NEEDED)                     Shared library: [libXext.so.6]
0x00000001 (NEEDED)                     Shared library: [libvga.so.1]
0x00000001 (NEEDED)                     Shared library: [libc.so.5]
и
readelf -a /mnt/gamez/gamezzz/quake/squake | grep NEEDED
0x00000001 (NEEDED)                     Shared library: [libm.so.5]
0x00000001 (NEEDED)                     Shared library: [libvga.so.1]
0x00000001 (NEEDED)                     Shared library: [libc.so.5]

вот чё выдало...

Добавлено:

INTERP         0x0000d4 0x080480d4 0x080480d4 0x00013 0x00013 R   0x1
     [Requesting program interpreter: /lib/ld-linux.so.1]

а имеется только ld-linux.so.2.... чё, мне теперь искать чтоли ld-linux.so.1... гдеж его найти то...?

Barracuda
23-03-2003, 10:39
чё, мне теперь искать чтоли
Ага. В дистрибутиве Шапки 5.2 такая фича была - я при помощи библиотек оттудова зовёл струю прекомпилированныю прогу.

Добавлено:

Я ж говорил, что в интерпретаторе проблема - никто не верил :(

Guest
23-03-2003, 10:57
нашёл я ld-linux.so.1... поставил...
стал просить libm.so.5...
установил libc-5.3.12-31.asp.i386.rpm
svgalib-1.4.3-2.asp.i386.rpm
запускаю.... чёрный экран с какой то рябью.... капец...

Barracuda
23-03-2003, 11:20
Guest
Дык, теперь, имхо, настраивать надо. Я не в курсе, как квака под Линуксом работает, к сожалению :(

Guest
23-03-2003, 11:33
так .. ешё при запуске выдаёт :
Общая ошибка защиты
чё к чему это...?  чё за фигня....

Guest
23-03-2003, 12:24
даже просто вызываю из консоли
# mc
пишет:
Общая ошибка защиты
-------
приехали.... :o

Barracuda
23-03-2003, 14:30
Guest
Действительно приехали. А как вы добавляли библиотечку-интерпретатор?




© OSzone.net 2001-2012