Итак, я скачал dwarf fortress linux edition, запустил терминал, распаковал bz2 (все еще в папке загрузок), cd ~ / Downloads / df_linux, затем:
~/Downloads/df_linux$ ./df
./df: 6: ./df: ./libs/Dwarf_Fortress: not found
~/Downloads/df_linux$ cd libs
~/Downloads/df_linux/libs$ ls -al
total 21408
-rwx------ 1 ***** ***** 15104448 Jul 29 14:06 Dwarf_Fortress
-rw-r--r-- 1 ***** ***** 466491 Jul 29 14:06 libgcc_s.so.1
-rwxr-xr-x 1 ***** ***** 1451966 Jul 29 14:06 libgraphics.so
-rwxr-xr-x 1 ***** ***** 4852343 Jul 29 14:06 libstdc++.so.6
~/Downloads/df_linux/libs$
Не найдено ??? ПРАВИЛЬНО ТАМ !!! Я даже попытался скопировать исполняемый файл Dwarf_Fortress в ~ / bin, а затем запустить Dwarf_fortress в командной строке:
~/Downloads/df_linux/libs$ cd ~/bin
~/bin$ ls -la
total 14788
-rwxr--r-- 1 ***** ***** 243 Jul 29 14:06 df
-rwx------ 1 ***** ***** 15104448 Jun 29 14:06 Dwarf_Fortress
~/bin$ df
/home/*****/bin/df: 6: /home/*****/bin/df: ./libs/Dwarf_Fortress: not found
~/bin$ Dwarf_Fortress
bash: /home/*****/bin/Dwarf_Fortress: No such file or directory
~/bin$
Опять та же проблема. что-то не так с этим
В любом случае, если вам интересно, я запустил прикосновение * к файлам и не включил все вещи в мой ~ / bin, и экспортировал PS1 = '/ w $' в my .bashrc
Как я пытался это исправить
Так как он говорит мне, что он не может найти исполняемый файл, я отредактировал форму последней строки ./libs/Dwarf_Fortress для полного пути, та же ошибка. Затем я попытался удалить все, кроме команды экспорта и команды execute (которую я изменил на полный путь к своему исполняемому файлу), и повторил ту же ошибку.
В некоторых ответах мне было предложено опубликовать сумму md5, это 33e26a93e5914f7545fa1aaa53706eeb
Этот ответ был долгое время.
У меня тоже была эта проблема, но после копания я нашел ответ. По сути, /bin/sh
пытается выполнить собственный двоичный файл libs/Dwarf_Fortress
. Это не работает, потому что двоичный файл имеет неправильный формат для вашего процессора (то есть двоичный файл имеет формат x86 или x64, а ваш процессор - нет).
На странице «Загрузки» для DF вам нужно будет нажать «Все версии» и выбрать подходящую версию для архитектуры своего ПК или просто скомпилировать ее самостоятельно.
Из папки со свежей распакованной крепостью дварфов вы можете запустить команды:
pwd; sh -x df
это позволит продолжить отладку скрипта, запускающего крепость дварфов
, вы также можете запустить:
md5sum Dwarf_Fortress
из папки libs и вставьте контрольную сумму в качестве комментария сюда, если это возможно
Я полагаю, что это вызвано тем, что Вы пытаетесь выполнить 32-разрядный двоичный файл в 64-разрядной системе. Я просто загрузил DF 40.13, и это является определенно 32-разрядным:
~/Downloads/df_linux/libs$ file *
Dwarf_Fortress: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, stripped
libgcc_s.so.1: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, not stripped
libgraphics.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, not stripped
libstdc++.so.6: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, not stripped
Моя система является 64-разрядной:
~/Downloads/df_linux/libs$ uname -a
Linux daedalus 3.2.0-4-amd64 #1 SMP Debian 3.2.60-1+deb7u3 x86_64 GNU/Linux
Вот результат:
~/Downloads/df_linux$ ./df
./df: 6: ./df: ./libs/Dwarf_Fortress: not found
Я нашел решение здесь: http://dwarffortresswiki.org/index.php/DF2014:Installation#How-to_for_Debian_and_similar необходимо будет выпустить dpkg и склонный - получает команды, затем ремонтирует аудио, как описано.