@verlouren

Что делаеть, если программа не запускается из-за отсутствия файла, который в папке присутствует?

Скачал с известного сайта игрушку Northgard нативную под Linux. Опосля прохождения инсталлятора самопального при попытке запуска игры с ярлыка ничего не происходит. Если попробовать запустить игру через файл run.sh в папке со всеми файлами, выдает ошибку

src/module.c(352) : FATAL ERROR : Failed to load library fmt.hdll


Данный файл в папке присутствует. В файле run.sh путь к фалу этому заанее не прописан, а прописано так:
#!/usr/bin/env bash

export LC_ALL=C

# Move to the game directory
cd "$(dirname "$(realpath "$0")")" || exit

# Run the game
exec ./hl sdlboot.dat


Куда копать?
  • Вопрос задан
  • 357 просмотров
Пригласить эксперта
Ответы на вопрос 1
В приведённом Вами фрагменте кода обращение к hdll-файлу отсутствует. Здесь следует проверять указанные в аттрибутах файла разрешения на доступ и владельца файлов. Исполняемым бинарным файлам необходимы x-разрешения для их выполнения. Файлам загружаемых библиотек требуются как минимум r-разрешения, если они не запускаются на исполнение, а только загружаются в состав других элементов. Консольная утилита strace может помочь извлечь больше подробностей о причинах, по которым hdll-файл не может быть загружен.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы