🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Lua

Luaは、汎用のスクリプト言語の一つで、 移植性が高く、高速な実行速度などの特徴を持ち 手続き型・オブジェクト指向言語としても利用可能で 関数型言語、データ駆動型の要素も併せ持っている言語です。

Q&A

1回答

1452閲覧

luaの実行エラー: module 'cudnn' not found:No LuaRocks module found for cudnnを解決したい

hamu_tukareta

総合スコア6

Lua

Luaは、汎用のスクリプト言語の一つで、 移植性が高く、高速な実行速度などの特徴を持ち 手続き型・オブジェクト指向言語としても利用可能で 関数型言語、データ駆動型の要素も併せ持っている言語です。

0グッド

0クリップ

投稿2019/11/20 14:20

前提・実現したいこと

https://github.com/DmitryUlyanov/texture_netsにアップロードされているstyle transferを自分のローカル環境で実行したいです。
当方luaを初めて触るため、見当違いな内容で合ったら申し訳ありません

発生している問題・エラーメッセージ

README.MDに従って、リポジトリ内のtrain.luaの実行を試みました
(私自身のユーザネームの箇所は(muyname)で置換しています)
(以下のtrain2014は訓練用画像のデータセットが入っているフォルダを、the_scream.jpgはスタイル画像をそれぞれ指しています)

(base) (myname)@(myname):~/texture_nets-master$ th train.lua -data train2014 -style_image the_scream.jpg /home/(myname)/torch/install/bin/luajit: /home/(myname)/torch/install/share/lua/5.1/trepl/init.lua:389: module 'cudnn' not found:No LuaRocks module found for cudnn no field package.preload['cudnn'] no file '/home/(myname)/.luarocks/share/lua/5.1/cudnn.lua' no file '/home/(myname)/.luarocks/share/lua/5.1/cudnn/init.lua' no file '/home/(myname)/torch/install/share/lua/5.1/cudnn.lua' no file '/home/(myname)/torch/install/share/lua/5.1/cudnn/init.lua' no file './cudnn.lua' no file '/home/(myname)/torch/install/share/luajit-2.1.0-beta1/cudnn.lua' no file '/usr/local/share/lua/5.1/cudnn.lua' no file '/usr/local/share/lua/5.1/cudnn/init.lua' no file '/home/(myname)/.luarocks/lib/lua/5.1/cudnn.so' no file '/home/(myname)/torch/install/lib/lua/5.1/cudnn.so' no file '/home/(myname)/torch/install/lib/cudnn.so' no file './cudnn.so' no file '/usr/local/lib/lua/5.1/cudnn.so' no file '/usr/local/lib/lua/5.1/loadall.so' stack traceback: [C]: in function 'error' /home/(myname)/torch/install/share/lua/5.1/trepl/init.lua:389: in function 'require' train.lua:5: in main chunk [C]: in function 'dofile' ...aoru/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:150: in main chunk [C]: at 0x00405d50

エラー内容をググってみると、どうやらモジュールのcudnnが見つからないために起こるエラーなので、luarocks install cudnnでインストールを試みました

(base) (myname)@(myname):~/texture_nets-master$ luarocks install cudnn Installing https://raw.githubusercontent.com/torch/rocks/master/cudnn-scm-1.rockspec... Using https://raw.githubusercontent.com/torch/rocks/master/cudnn-scm-1.rockspec... switching to 'build' mode Missing dependencies for cudnn: cutorch (中略) -- Configuring incomplete, errors occurred! See also "/tmp/luarocks_cutorch-scm-1-2088/cutorch/build/CMakeFiles/CMakeOutput.log". See also "/tmp/luarocks_cutorch-scm-1-2088/cutorch/build/CMakeFiles/CMakeError.log". Error: Failed installing dependency: https://raw.githubusercontent.com/torch/rocks/master/cutorch-scm-1.rockspec - Build error: Failed building.

CMakeError.logは以下です。(CMakeOutput.logは行数が500行程度と非常に多いため質問欄への記載は控えております)

Performing C SOURCE FILE Test HAS_LUAL_SETFUNCS failed with the following output: Change Dir: /home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp Run Build Command:"/usr/bin/make" "cmTC_8afe6/fast" /usr/bin/make -f CMakeFiles/cmTC_8afe6.dir/build.make CMakeFiles/cmTC_8afe6.dir/build make[1]: ディレクトリ '/home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp' に入ります Building C object CMakeFiles/cmTC_8afe6.dir/src.c.o /usr/bin/cc -I/home/(myname)/torch/install/include -std=c99 -Werror=implicit-function-declaration -DHAS_LUAL_SETFUNCS -o CMakeFiles/cmTC_8afe6.dir/src.c.o -c /home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp/src.c /home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp/src.c: In function ‘main’: /home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp/src.c:5:20: error: ‘luaL_setfuncs’ undeclared (first use in this function) long i = sizeof(&luaL_setfuncs); ^ /home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp/src.c:5:20: note: each undeclared identifier is reported only once for each function it appears in CMakeFiles/cmTC_8afe6.dir/build.make:65: ターゲット 'CMakeFiles/cmTC_8afe6.dir/src.c.o' のレシピで失敗しました make[1]: *** [CMakeFiles/cmTC_8afe6.dir/src.c.o] エラー 1 make[1]: ディレクトリ '/home/(myname)/torch/extra/cutorch/build/CMakeFiles/CMakeTmp' から出ます Makefile:126: ターゲット 'cmTC_8afe6/fast' のレシピで失敗しました make: *** [cmTC_8afe6/fast] エラー 2 Source file was: #include <lauxlib.h> int main() { long i = sizeof(&luaL_setfuncs); return 0; }

試したこと

train.luaのソースコードを見てみると、はじめの数行で

lua

1require 'torch' 2require 'nn' 3require 'image' 4require 'optim' 5require 'cudnn' 6 7require 'src/utils' 8require 'src/descriptor_net' 9require 'src/preprocess_criterion'

と定義されていたため、(pythonで言うところのimport ○○に該当?)luarocks installで上から順にインストールしていったところcudnn以外は正常にインストールできたようでした。

また、https://github.com/torch/cunn/issues/113で似たような内容の質問があったのですが、CUDAのインストールで同様にエラーが出てきてしまい躓いている状況です

補足情報(FW/ツールのバージョンなど)

実行環境:ubuntu16.04 LTS
最低限として、thコマンドでTorch7は実行できます

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

Luaのバージョンは?
バージョン間互換がなくてコケてる気がする。
5.1以下なら5.2以上に、5.2以上なら5.1にすると、もしかしたら通るかも。
http://www.lua.org/manual/5.2/manual.html#8

投稿2019/11/20 18:02

yokuda

総合スコア138

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hamu_tukareta

2019/11/21 09:43

torchで(th 〇〇.lua を入力)実行していたためlua本体をインストールしていない状態?でした sudo apt installでlua5.1とlua5.2両方試してみましたがどちらをインストールした状態でも同様のエラーが発生してしまいました。 また、試しにrequire cudnnをコメントアウトしてtrain.luaを実行すると今度はmodule 'cutorch' not found:No LuaRocks module found for cutorch とエラーが発生してしまっております
yokuda

2019/11/21 10:10

luarocks install cudnn luaインストール後にこれはしましましたか?
yokuda

2019/11/21 11:32

うーん、ビルドに使うLuaのバージョンを指定する必要があるんですが、それはできていそうですか? http://lua-users.org/wiki/LuaRocksConfig 要はこれらの環境変数に基づいて、使われるLUAが変わるということです。 * LUA * LUA_BINDIR * LUA_INCDIR * LUA_LIBDIR
hamu_tukareta

2019/11/25 06:09

返信が遅れてしまい申し訳ありません 対応しているはずのディレクトリにconfig-5.1.luaなどのファイルが存在していないなど、インストール時点での不具合がありそうです もうすこし探ってみます
yokuda

2019/11/25 10:31

頑張ってください????
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問