Программа на C ++, использующая факелы, компилируется, но не может загрузить libtorch.so во время выполнения - PullRequest
0 голосов
/ 16 апреля 2019

Я использую код C ++, который интегрирует torch и запускает сценарии lua внутри.Я собрал и установил факел, и он успешно работает.Таким образом, проект c ++ компилирует и создает исполняемые файлы без ошибок.

Во время выполнения код получает имя сценария lua в качестве параметра и пытается выполнить этот сценарий.Один только этот скрипт lua запускается через torch, т.е. th script.lua запускается и не показывает ошибок.Однако в коде я получаю ошибку времени выполнения: /home/jeffrey/torch/install/share/lua/5.1/torch/init.lua:13: не могу загрузить '/home/jeffrey/torch/install/lib/lua/5.1/libtorch.so.

Я попытался удалить libtorch.so из каталога, и затем я получаю сообщение об ошибке, что библиотека не может быть найдена, поэтому проблема заключается в том, что она не может быть загружена, и я не совсем уверен, что это значит.Я попытался дать дополнительные разрешения всем библиотекам в моей установке факела как суперпользователь - это не сработало.

Я запускаю исполняемый файл следующим образом:

.. / .. / train_obj -oscript train_obj.lua

где train_obj - исполняемый файл, а train_obj.lua - скриптэто будет запущено.В скрипте есть операторы require для включения модулей из torch.Когда вызывается «require», запускается init.lua.

В init.lua в строках 12 и 13 появляются следующие операторы require:

(строка 12) требуют «paths»

(строка 13) paths.require "libtorch"

Строка 13, очевидно, пытается загрузить библиотеку libtorch, т.е. libtorch.so.В этой строке во время выполнения возникает указанная выше ошибка.

У меня возникают проблемы с устранением неполадок, что нужно сделать, чтобы разрешить этой библиотеке загружаться во время выполнения.Опять же - если я напрямую использую torch через оператор th и вызываю: th train_obj.lua или: init_lua th, то все в порядке - оба работают без ошибок.Только когда я запускаю train_obj.lua через код, который вызывает запуск init.lua, я получаю ошибку при загрузке библиотеки.Если кто-то испытал это и понял, что необходимо для загрузки библиотеки, я был бы признателен за помощь в решении этой проблемы.

...