繁体   English   中英

从Lua调用C时出错

[英]Error calling C from Lua

我尝试了这个例子并且与Lua有一些问题:

icc -Wall -shared -fPIC -o power.so hellofunc.c -I/home/lukas/Workspace/Lua/LuaC -L/home/lukas/Workspace/Lua/LuaC/ -llua52

编译hellofunc.c文件没有问题,但是当我尝试运行Lua-File时,我收到以下错误消息:

lua LuaC.lua
lua: error loading module 'power' from file './power.so':
        liblua52.so: cannot open shared object file: No such file or directory
stack traceback:
        [C]: in ?
        [C]: in function 'require'
        LuaC.lua:1: in main chunk
        [C]: in ?

LuaC.lua

require("power")
 print(square(1.414213598))
 print(cube(5))

Lua库和头文件位于同一文件夹中。

由于您已在主目录中而不是在系统文件夹(例如/usr )下安装了Lua,因此加载程序在运行程序时不知道在哪里可以找到Lua动态库文件。

您可以通过将LD_LIBRARY_PATH环境变量设置为指向包含Lua动态库文件的文件夹来解决此问题,例如:

export LD_LIBRARY_PATH=/home/lukas/Workspace/Lua/LuaC

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM