18

ここrootbeerから見つけることができるライブラリで最初の例を実行しようとしています。

問題は、すべての指示に従ったにもかかわらず、Jar を実行しようとすると次のメッセージが表示されることです。

root@ubuserver3:/home/ubuadmin/JavaJars/HelloWordGPU# java -jar HelloWorldGPU.jar
OpenJDK Client VM warning: You have loaded library /usr/lib/libcuda.so.319.37 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'.
Exception in thread "main" java.lang.NullPointerException
        at org.trifort.rootbeer.runtime.Rootbeer.run(Rootbeer.java:104)
        at ScalarMult.test(ScalarMult.java:13)
        at Main.main(Main.java:17)

私は Linux の人ではないので、このコマンドを正しく実行する方法がわかりません。また、GPU プログラミングを行うのはこれが初めてなので、そのメッセージの意味もわかりません。しかし、間違ったコマンドで GPU をいじると問題になることはわかっています。

4

5 に答える 5

4

1: 次のコマンドを使用して execstack のバージョンを確認し、execstack がインストールされているかどうかを確認します。

execstack --version

2: execstack がインストールされていない場合は、次のコマンドを使用してインストールします。

sudo apt-get install execstack -y --force-yes

3: インストールが成功したら、次のコマンドを実行します。

sudo execstack -c <filepath>

例: sudo execstack -c /usr/lib/libjpcap.so

于 2016-09-10T10:32:51.687 に答える