2016-09-29 2 views
1

にインストールさluarocksを見つけることができません。Luaは私がluarocksをインストールUbuntuの

$ sudo apt-get install luarocks 

私はluarocksでLUA-cjsonをインストールします。

$sudo luarocks install lua-cjson 

ショーパッケージ:だから

$luarocks list 

Installed rocks: 
---------------- 
lua-cjson 
    2.1.0-1 (installed) - /usr/local/lib/luarocks/rocks 

、私が見ますパッケージ:

$luarocks show lua-cjson 

License: MIT 
Homepage: http://www.kyne.com.au/~mark/software/lua-cjson.php 
Installed in: /usr/local 
. . . 
Modules: 
    cjson 
    lua2json 
    json2lua 
    cjson.util 


    lua-cjson 
      2.1.0-1 (installed) - /usr/local/lib/luarocks/rocks 

しかし、Luaはモジュールを参照してくださいすることはできません。

$lua 
Lua 5.2.3 Copyright (C) 1994-2013 Lua.org, PUC-Rio 
> require "cjson" 
stdin:1: module 'cjson' not found: 
.... 


$locate cjson.so 
/usr/local/lib/lua/5.1/cjson.so 

、それは誤りである何?

答えて

2

luarocksはデフォルトでLua 5.1のものをインストールしているようです(これはapt-getを使用してインストールした場合の動作です)。あなたがLua 5.1を使用しても構わないのであれば、その代わりに(lua5.1とタイプして)それを使うことができ、require "cjson"はうまくいくはずです。

実際にcjsonをLua 5.2にしたい場合は、もう少し複雑です。まず、Lua 5.2用の開発ファイルがあることを確認する必要があります。

sudo apt-get install liblua5.2-dev 

が続いluarockshere用ソースの最新バージョンをダウンロードしてみてください。 Extract、およびcdを端末のディレクトリにコピーします。

は、その後のLua 5.2で動作luarocksのバージョンをインストールします

./configure --lua-version=5.2 --versioned-rocks-dir 
make build 
sudo make install 

この(this postから)次のコマンドを実行します。その後、あなたはその後、Luaの5.2でcjsonを使用することができるはず

sudo luarocks-5.2 install lua-cjson 

を使用してcjsonをインストールすることができます。

関連する問題