
Я пытаюсь установить JavaNNS на Ubuntu 14.04, в руководстве просто говорится, что нужно распаковать загрузку в один каталог, этот каталог должен содержать examples
, JavaNNS.jar
, и manual
. Затем вы должны открыть терминал и запустить , java -jar JavaNNS.jar
в этот момент появится окно с просьбой указать каталог для установки, это когда libSNNS_jkr.so
создается в указанном каталоге.
Ниже приведено сообщение об ошибке, которое я получаю после попытки установки. Кто-нибудь знает, как успешно установить это?
~> pwd
/home/user/Desktop/jnns
~> ls
examples JavaNNS.jar libSNNS_jkr.so manual
~> java -jar JavaNNS.jar
OpenJDK 64-Bit Server VM warning: You have loaded library /home/user/Desktop/jnns/libSNNS_jkr.so which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.
java.lang.Exception: The system couldn´t find the library SNNS_jkr
JavaNNS couldn´t start.
at javanns.Network.<init>(javanns/Network.java:48)
at javanns.Snns.<init>(javanns/Snns.java:151)
at javanns.Snns.appletMain(javanns/Snns.java:278)
at javanns.Snns.main(javanns/Snns.java:258)
решение1
JavaNNS требует библиотеку для работы. Библиотека, которую она требует, — это ядро из SNNS. SNNS был приложением X Windows и «ядром», но часть X Windows была фактически устарела в пользу JavaNNS... Хотя JavaNNS использует оригинальное «ядро» SNNS.
Если я правильно помню, JavaNNS распространялся с ядром SNNS, предварительно скомпилированным для разных платформ, но это все довольно старая штука, так что я не особенно удивлен, что у нее есть некоторые проблемы. Вероятно, не работал бы, даже если бы нашел библиотеку.
Я создал пакет Debian для ядра SNNS и JavaNNS в прошлом году (я использовал SNNS около 10 лет назад и хотел снова в прошлом году), и вы можете помочь себе, если хотите. Я, конечно, не даю никаких гарантий или поддержки, но это должно работать, поскольку оно будет собирать, устанавливать, зависимости пакетов между ними будут работать, и оно найдет библиотеку! По крайней мере, это работало в системе Debian в то время (вероятно, это был Squeeze).
Репозитории на git для обоих проектов проверены в чистых исходниках с пакетом Debian, зафиксированным впоследствии (ни у одного из них ранее не было репозитория git, поэтому я не смог создать ответвление):