2016-12-03 39 views
1

我在Ubuntu 16.04使用Luasec生產「模塊‘ssl.core’未找到」

運行的Lua 5.1的OpenSSL我有根據dpkg -l | grep openssl的版本是1.0.2g-1ubuntu4.5

我已經拉下源Luasec 0.5.1

安裝說運行 lua options.lua -g /usr/include/openssl/ssl.h > options.h產生對你的SSL版本的新options.h。

我已經完成了,然後使用make linux來構建沒有錯誤。 sudo make install然後做

install -d //usr/share/lua/5.1/ssl //usr/lib/lua/5.1 
install -D ssl.so //usr/lib/lua/5.1 
install -m644 -D ssl.lua //usr/share/lua/5.1 
install -m644 -D https.lua //usr/share/lua/5.1/ssl 

在我的代碼,我開始與

local socket = require("socket") 
local smtp = require("socket.smtp") 
local ssl = require("ssl") 

上,該服務的SSL生產線生產:

lua: /usr/local/share/lua/5.1/ssl.lua:7: module 'ssl.core' not found: 
no field package.preload['ssl.core'] 
no file 'ssl/core.lua' 
no file '/usr/local/share/lua/5.1/ssl/core.lua' 
no file '/usr/local/share/lua/5.1/ssl/core/init.lua' 
no file '/usr/local/luajit/share/luajit-2.1.0-beta2/ssl/core.lua' 
no file './ssl/core.so' 
no file '/usr/local/lib/lua/5.1/ssl/core.so' 
no file '/usr/local/lib/lua/5.1/loadall.so' 
no file './ssl.so' 
no file '/usr/local/lib/lua/5.1/ssl.so' 
no file '/usr/local/lib/lua/5.1/loadall.so' 

沒有core.lua我可以找到來源。這裏尋找什麼?

回答

1

ssl.coressl.so定義,見luaopen_ssl_core

但是,ssl.so安裝在/usr/lib/lua/5.1中,未在錯誤消息中列出的默認路徑中找到。

將其移至/usr/local/lib/lua/5.1/ssl.so或更改LUA_CPATHpackage.cpath以包含/usr/lib/lua/5.1/

INSTALL告訴您在頂層Makefile中調整LUAPATHLUACPATH