我使用中的一个简单示例来进行测试。该示例可以静态地链接到liblajit.a以获得成功,但是在运行它时会出现此错误消息:
Segmentation fault: 11
我使用LuaJIT-2.0.0在2012-11-08年发布。我的操作系统是MacOSXLion10.7.5。
$ uname -a
Darwin macmatoMacBook-Pro.local 11.4.2 Darwin Kernel Version 11.4.2: Thu Aug 23 16:25:48 PDT 2012; root:xnu-1699.32.7~1/RELEASE_X86_64 x86_64
测试步骤:
编译
我正在尝试将LuaJIT嵌入到一个C应用程序中。代码如下:
#include <lua.h>
#include <lualib.h>
#include <lauxlib.h>
#include <stdlib.h>
#include <stdio.h>
int barfunc(int foo)
{
/* a dummy function to test with FFI */
return foo + 1;
}
int
main(void)
{
int status, result;
lua_St
来自文档:
luajit -b test.lua test.obj # Generate object file
# Link test.obj with your application and load it with require("test")
但并没有解释怎么做这些事。我想他们认为使用Lua的人也是C程序员,而不是我的情况!我能得到帮助吗?以GCC为例。
除了C字节数组头之外,我还想做同样的事情。我也找不到这方面的文件。
luajit -bt h -n test test.lua test.h
这会创建头文件,但我不知道如何从C.谢谢
我想在我的redhat system...in订单上安装LuaJIT,以使OSRM正常工作。我已经尝试通过遵循的说明来完成此操作
我特别关注了这一部分:
cd /tmp
wget http://luajit.org/download/LuaJIT-2.0.2.tar.gz
tar -zxvf LuaJIT-2.0.2.tar.gz
cd LuaJIT-2.0.2
make install PREFIX=/opt/osrm_infrastructure/LuaJIT-2.0.2
然而,我得到了以下错误:
==== Building LuaJIT 2.0.2 ====
make -C src
lj
我通过运行以下命令来安装lua socket模块:
apt install lua-socket
当在local socket = require('socket')配置中使用OpenResty时,我得到了以下错误:
module 'socket' not found:
no field package.preload['socket']
no file '/usr/local/openresty/site/lualib/socket.ljbc'
no file '/usr/local/openresty/site/lu
我在docker container中有一个openresty应用程序:
FROM openresty/openresty:xenial
RUN luarocks install luasocket
# Add additional binaries into PATH for convenience
ENV PATH=$PATH:/usr/local/openresty/luajit/bin:/usr/local/openresty/nginx/sbin:/usr/local/openresty/bin
ENV LUA_PATH="/usr/local/openresty/sit
我试图用.deb构建一个debuild -i -us -uc -b包,最后我看到了:
Now running lintian...
warning: the authors of lintian do not recommend running it with root privileges!
W: libluajit-5.1-2: hardening-no-relro usr/lib/powerpc64le-linux-gnu/libluajit-5.1.so.2.1.0
E: libluajit-5.1-2: shlib-with-non-pic-code usr/lib/pow