我正在寻找每个实际需要运行lua脚本所需的库,该脚本需要火炬库。
test.lua
#!/usr/bin/env lua
print "Welcome to LUA"
print('_VERSION = ' .. _VERSION)
require("nn") -- this loads torch nn libraries to be further used in the code
print "Load pass"
输出
Welcome to LUA
_VERSION = Lua 5.1
Load pass
当我用
lld
我在编译一个项目时遇到了麻烦,主要是链接对象。链接者抱怨:
$ g++ -o bin/program obj/linux64/Debug/src/main.o [... more object files ...] ../../../addons/obj/linux64/Debug/ofxLua/libs/lua/lua/lapi.o [...many other object files and libraries...]
../../../addons/obj/linux64/Debug/ofxLua/libs/luabind/src/scope.o: In function `~lua
好日子,我真的花了几乎所有午后时间在Centos 7上安装lua5.3 。我主要找到了安装Lua5.1的信息,但我们确实需要5.2或5.3版本。
如果我找到5.3的信息,那不是Centos的信息。
到目前为止,我能做的最好的就是从lua网站下载源代码版本,但我仍然无法安装它。
以下是我的步骤,也许你可以帮我继续
curl -R -O http://www.lua.org/ftp/lua-5.3.4.tar.gz
tar zxf lua-5.3.4.tar.gz
cd lua-5.3.4
make linux test
问题是,从那时起,我如何安装它。
我试过了
make
和
make linu
在Linux下,使用lua5.1,我在一个隐藏目录下有一个Lua脚本:~/.texmf/lua/print_table.lua。(它与LuaTeX相关,这就是为什么它在texmf目录中。)我从我的主目录以交互方式运行lua,尝试require该文件,并得到以下错误消息:
> require('.texmf/lua/print_table')
stdin:1: module '..texmf/lua/print_table' not found:
no field package.preload['.texmf/lua/print_table
我正试着让Iup在Lua工作。我已经成功地用C语言安装并运行了iup,但我的gui中有一个嵌入式lua解释器,如果能够从解释器中加载对话框将会很有帮助。但是,当我尝试执行require("iuplua")时,我得到以下错误:
> require("iuplua")
stdin:1: module 'iuplua' not found:
no field package.preload['iuplua']
no file './iuplua.lua'
no file '/usr/
因为我的游戏--我真的很想使用Mono-可用--似乎没有在Linux下运行,因为LuaInterface是个混蛋(关于这个问题的更多信息,请看 ),所以我决定做这里建议的事情。我编写了自己的Lua511.LuaDLL类来反映LuaInterface使用的类,将每个公共函数替换为各自来自lua51的DllImport:
//For example, like this:
[DllImport("lua51")]
public static extern IntPtr luaL_newstate();
使用已编辑的LuaInterface.dll (它现在承载了自己的Lua511.
我想在我的Linux计算机上同时安装Lua5.2和5.1。这仅仅是用通常的make linux install安装每个版本的问题,还是有其他的事情?我特别担心头文件和库文件,因为这些文件似乎位于没有使用版本号命名的目录中,比如/usr/local/include。
除此之外,是否可以设置Luarock,使其可以同时安装5.1和5.2库?我知道Luarock命名空间在5.2或5.1目录中,设置LUA_PATH_5_X和LUA_CPATH_5_X变量应该可以在那之后配置Lua,但我不明白Luarocks是如何决定编译C库的Lua版本的。
我试图在我的C++程序中使用Lua。我的操作系统是LinuxManjaro15.12。我下载了Lua5.3源代码,并将其编译为C++代码(我确实需要异常处理而不是longjmp),并使用以下行:
make "CC=g++" linux
然后,sudo make将Lua安装在/usr/local中。一切看起来都很好。我的CMake版本似乎正在更新:
cmake --version
cmake version 3.4.1
在我的CMake文件中,我发现Lua如下所示:
find_package(Lua REQUIRED)
include_directories(${LUA_INCL
我运行了g++ -g ./src/*.cpp -L/usr/lib/ -llua5.3
得到了一个错误。
/usr/bin/ld: cannot find -llua5.3
collect2: error: ld returned 1 exit status
如何让链接器找到lua库?我已经使用以下命令安装了lua
wget -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gz
tar zxf lua-5.3.0.tar.gz
cd lua-5.4.2
make linux
make install
我正在尝试从that内部运行一个lua脚本,该脚本导入"pgmoon“库。我可以导入pgmoon并打开一个套接字,但是接下来我会遇到这样的情况:
[ALERT] 082/234313 (8) : Lua function 'queue-request': runtime error: /usr/local/share/lua/5.3/pgmoon/init.lua:269: module 'pgmoon.crypto' not found:
no field package.preload['pgmoon.crypto']
no file