私は卒業研究でdeeplearningを用いて物体検出をしようとしているものです。
このサイトを参考にdarknet NNPACKを実行しようとしました。
しかし、コマンドプロンプトから$NINJA_PATH/ninjaと打つと以下のようなエラーが発生します。
pi@raspberrypi:~/NNPACK-darknet $ $NINJA_PATH/ninja [1/82] LINK bin/convolution-benchmark FAILED: /home/pi/NNPACK-darknet/bin/convolution-benchmark g++ -pthread -o /home/pi/NNPACK-darknet/bin/convolution-benchmark /home/pi/NNPACK-darknet/build/bench/convolution.c.o /home/pi/NNPACK-darknet/build/bench/median.c.o /home/pi/NNPACK-darknet/build/bench/memread.c.o /home/pi/NNPACK-darknet/lib/libnnpack.a /home/pi/NNPACK-darknet/lib/libpthreadpool.a -lrt /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_create': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:258: undefined reference to `pthreadpool_allocate' /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_destroy': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/bin/convolution-benchmark: internal symbol `pthreadpool_deallocate' isn't defined /usr/bin/ld: 最終リンクに失敗しました: bad value collect2: error: ld returned 1 exit status [2/82] LINK bin/fully-connected-benchmark FAILED: /home/pi/NNPACK-darknet/bin/fully-connected-benchmark g++ -pthread -o /home/pi/NNPACK-darknet/bin/fully-connected-benchmark /home/pi/NNPACK-darknet/build/bench/fully-connected.c.o /home/pi/NNPACK-darknet/build/bench/median.c.o /home/pi/NNPACK-darknet/build/bench/memread.c.o /home/pi/NNPACK-darknet/lib/libnnpack.a /home/pi/NNPACK-darknet/lib/libpthreadpool.a -lrt /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_create': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:258: undefined reference to `pthreadpool_allocate' /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_destroy': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/bin/fully-connected-benchmark: internal symbol `pthreadpool_deallocate' isn't defined /usr/bin/ld: 最終リンクに失敗しました: bad value collect2: error: ld returned 1 exit status [3/82] LINK bin/transform-benchmark FAILED: /home/pi/NNPACK-darknet/bin/transform-benchmark g++ -pthread -o /home/pi/NNPACK-darknet/bin/transform-benchmark /home/pi/NNPACK-darknet/build/bench/transform.c.o /home/pi/NNPACK-darknet/build/bench/median.c.o /home/pi/NNPACK-darknet/build/bench/memread.c.o /home/pi/NNPACK-darknet/lib/libnnpack.a /home/pi/NNPACK-darknet/lib/libpthreadpool.a -lrt /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_create': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:258: undefined reference to `pthreadpool_allocate' /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_destroy': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/bin/transform-benchmark: internal symbol `pthreadpool_deallocate' isn't defined /usr/bin/ld: 最終リンクに失敗しました: bad value collect2: error: ld returned 1 exit status [4/82] LINK bin/relu-benchmark FAILED: /home/pi/NNPACK-darknet/bin/relu-benchmark g++ -pthread -o /home/pi/NNPACK-darknet/bin/relu-benchmark /home/pi/NNPACK-darknet/build/bench/relu.c.o /home/pi/NNPACK-darknet/build/bench/median.c.o /home/pi/NNPACK-darknet/build/bench/memread.c.o /home/pi/NNPACK-darknet/lib/libnnpack.a /home/pi/NNPACK-darknet/lib/libpthreadpool.a -lrt /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_create': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:258: undefined reference to `pthreadpool_allocate' /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_destroy': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/bin/relu-benchmark: internal symbol `pthreadpool_deallocate' isn't defined /usr/bin/ld: 最終リンクに失敗しました: bad value collect2: error: ld returned 1 exit status [5/82] LINK bin/pooling-benchmark FAILED: /home/pi/NNPACK-darknet/bin/pooling-benchmark g++ -pthread -o /home/pi/NNPACK-darknet/bin/pooling-benchmark /home/pi/NNPACK-darknet/build/bench/pooling.c.o /home/pi/NNPACK-darknet/build/bench/median.c.o /home/pi/NNPACK-darknet/build/bench/memread.c.o /home/pi/NNPACK-darknet/lib/libnnpack.a /home/pi/NNPACK-darknet/lib/libpthreadpool.a -lrt /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_create': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:258: undefined reference to `pthreadpool_allocate' /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_destroy': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/bin/pooling-benchmark: internal symbol `pthreadpool_deallocate' isn't defined /usr/bin/ld: 最終リンクに失敗しました: bad value collect2: error: ld returned 1 exit status [6/82] LINK bin/convolution-output-alexnet-test FAILED: /home/pi/NNPACK-darknet/bin/convolution-output-alexnet-test g++ -pthread -o /home/pi/NNPACK-darknet/bin/convolution-output-alexnet-test /home/pi/NNPACK-darknet/build/src/ref/convolution-output.c.o /home/pi/NNPACK-darknet/build/src/ref/convolution-input-gradient.c.o /home/pi/NNPACK-darknet/build/src/ref/convolution-kernel.c.o /home/pi/NNPACK-darknet/build/src/ref/fully-connected-output.c.o /home/pi/NNPACK-darknet/build/src/ref/max-pooling-output.c.o /home/pi/NNPACK-darknet/build/src/ref/softmax-output.c.o /home/pi/NNPACK-darknet/build/src/ref/relu-output.c.o /home/pi/NNPACK-darknet/build/src/ref/relu-input-gradient.c.o /home/pi/NNPACK-darknet/build/test/convolution-output/alexnet.cc.o /home/pi/NNPACK-darknet/lib/libnnpack.a /home/pi/NNPACK-darknet/lib/libpthreadpool.a /home/pi/NNPACK-darknet/lib/libgoogletest-core.a -lrt /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_create': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:258: undefined reference to `pthreadpool_allocate' /usr/bin/ld: /home/pi/NNPACK-darknet/lib/libpthreadpool.a(pthreads.c.o): in function `pthreadpool_destroy': /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/deps/pthreadpool/src/pthreads.c:459: undefined reference to `pthreadpool_deallocate' /usr/bin/ld: /home/pi/NNPACK-darknet/bin/convolution-output-alexnet-test: internal symbol `pthreadpool_deallocate' isn't defined /usr/bin/ld: 最終リンクに失敗しました: bad value collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed.
何故でしょうか?エラーの内容に最終リンクに失敗しましたやbenchmarkなどと書いてありますが、何が書いてあるのかさっぱりわかりません。
いろんなサイトを見ても同じ方法でできている人がいます。OSももう一度入れ直して実行してみましたが、できませんでした。
使用環境
raspberry pi4 4GB
OS:raspbian buster 20200213
学習済みモデル
yolov2-tiny-voc
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。