Articles of lua

编译Lua – 创build.so文件?

我在Centos 6.5上编译Lua 5.2.3,编译/安装正常。 但是,我还需要开发库来编译另一个程序。 我通常会这样做安装这些: yum install lua-devel 问题是,安装Lua 5.1共享库,而不是5.2.3的。 我可以从Centos的回购库中运行Lua 5.1,但如果这是一个简单的事情(知道的人)来做最新的版本,那么我会很感激有人给我指路。 对我来说,Linux makefiles仍然有点呃,你知道… 编辑 我很久以前发现这个网站 – http://lua-users.org/lists/lua-l/2006-10/msg00091.html – 它提出了对makefile的一些改变,但是当我运行它的时候我得到了这个现在: gcc -fPIC -o liblua.so -shared lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o lauxlib.o lbaselib.o lbitlib.o lcorolib.o ldblib.o liolib.o lmathlib.o loslib.o lstrlib.o ltablib.o […]

Linux编译为启用uart2

我使用openwrt,最初,在/ dev下,只有ttyO0是串口的控制台。 我用它来连接板(siamilar到beaglebone黑色)。 现在,我将电线连接到uart2。 但我认为openwrt默认不启用它。 我检查了设备树,am335x-bone.dts(我用我的板骨,导致我的板不BBB)。 我没有太多设置。 大部分configuration来自am33xx.dtst和am335x-bone-common.dtsi。 我检查了am33xx dtsi,在ocp下面有一些这样的代码{} uart0: serial@44e09000 { compatible = "ti,omap3-uart"; ti,hwmods = "uart1"; clock-frequency = <48000000>; reg = <0x44e09000 0x2000>; interrupts = <72>; status = "disabled"; }; uart1: serial@48022000 { compatible = "ti,omap3-uart"; ti,hwmods = "uart2"; clock-frequency = <48000000>; reg = <0x48022000 0x2000>; interrupts = <73>; status = "disabled"; […]

使用完整path的Linux中的ls命令列出文件

许多人会发现,这是重复的问题,但我已经经历了所有问题之前被问及有关这个话题,但没有为我工作。 我想使用ls命令打印完整path名称的某种文件格式,到目前为止,我发现了大量的代码,将打印目录中的所有文件,但不是完整的path。 for i in io.popen("ls /mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7"):lines() do if string.find(i,"%.*$") then print(i) end end 这将打印出根目录下的所有文件。 输出: 0020111118223425.lvf 2012 2012 (2009).mp4 3 Idiots Aashiqui 2 Agneepath.mkv Avatar (2009) Captain Phillips (2013) Cocktail 我想要输出像: /mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/0020111118223425.lvf [File in Root Directory] /mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/2012/2012.mkv /mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/2012 (2009).mp4 [File in Root Directory] /mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/3 Idiots/3 Idiots.mkv /mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/Aashiqui 2/Aashiqui 2.mkv /mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/Avatar (2009)/Avatar (2009).mkv /mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/Captain Phillips […]

通过共享库连接Python和Torch7(Lua)

我想在python和lua之间传递数据(数组),我想使用Torch7框架来操作lua中的数据。 我认为这可以通过C来完成,因为python和lua与C接口。还有一些优点是不需要数据拷贝(只传递指针)并且速度很快。 我实现了两个程序,一个是将luaembedded到c中,另一个是python将数据传递给c的程序。 它们在编译为可执行的二进制文件时都工作。 但是,当c到lua程序被改为一个共享库时,事情就不起作用了。 细节:我使用的是64位ubuntu 14.04和12.04。 我使用luajit 2.0.2与lua 5.1安装在/ usr / local /依赖库在/ usr / local / lib和标头在/ usr / local / include我使用Python 2.7 c到lua程序的代码是: tensor.lua require 'torch' function hi_tensor(t) print('Hi from lua') torch.setdefaulttensortype('torch.FloatTensor') print(t) return t*2 end cluaf.h void multiply (float* array, int m, int n, float *result, int m1, int n1); cluaf.c […]

lua“存根”dll的目的是什么?

我正在考虑将Lua整合到一个C ++项目中,并且在Luabinaries发行版中存在两个二进制文件(lua51.dll和lua5.1.dll),这让我感到困惑 。 根据文件… 在Windows中,您的库或应用程序必须链接到存根库。 存根库是一个只有函数声明的库,它将DLL与Lua DLL绑定。 为什么? 在与第三方DLL链接之前,我从来不需要存根DLL?

计算一组字符的出现并从string中减去空格

看到下面的第一张图片的问题。 你可以看到,第一行文本正确alignment,但第二行没有。 几个月前,我写了一些代码将文本集中在一个string中,以便将其很好地处理到游戏服务器修改的控制台上。 这个代码工作得非常好,但有两个主要问题: 游戏服务器崩溃,如果我们超过了实际控制台的112个字符的限制(这个问题不会发生在一个正常的控制台消息) 在文本中使用颜色会导致string右移两个字符为每个颜色代码 我正在寻求解决第二个问题(虽然解决第一个问题将是一个巨大的好处),但是不知道如何做到这一点。 我不能简单地把颜色编码出来,因为这是需要颜色的文字。 这个代码可能很简单,如果我没有9种颜色可供select: *$1= White *$2= Dark Blue *$3= Green *$4= Red *$5= Yellow *$6= Light Blue *$7= Purple *$8= Orange *$9= Grey 我也不想简单地寻找'$',因为在某些情况下这被用作正常字符。 插入空格可能会忽略$ 1- $ 9? 如果是的话,我会如何处理? 代码 int CScriptBind_GameRules::CentreTextForConsole(IFunctionHandler *pH, const char *msg) { if (msg) { const int linelength=200; char newmsg[linelength+1]; for(int i=0;i<linelength;i++) newmsg[i]=0; for(int […]

用Lua执行powershell命令

晚上好, 我有一个与我一起工作的程序,它有一个板载的lua编译器,允许自定义的写操作。 由于工具本身是非常有限的,特别是如果它通过networking复杂的反应,我想要使用Powershell卢阿。 可悲的是没有什么可以find(至less我没有),像os.execute()或io.popen()使用标准的命令行从Windows。 有人知道图书馆或其他方式与lua使用Powershell。 我已经试过了:我尝试用Powershell编辑器编写命令行脚本,并使用os.execute运行此脚本,但是它将其作为文本文件打开,最好直接在lua中编写命令,但如果没有另外,直接执行PowerShell脚本也可以。 (在Windows中,您可以使用鼠标右键执行脚本“单击/执行Powershell”

Windows Lua可执行文件

您好我有一个Lua程序(用Lua 5.1编写)。 我在Windows 7上,试图将其转换为可执行文件。 到目前为止没有运气。 我已经阅读了其他post,build议使用srlua来做到这一点,所以我已经下载了它,但我不知道下一步该做什么。 我安装了cygwin,因为我知道这是必要的,但我不知道如何使用srlua将lua文件转换为可执行文件。 任何帮助将不胜感激。

有一个程序可以sorting一个Lua程序输出的值吗?

我需要一个程序(对于窗口),可以按字母顺序sortingLua程序执行和closures后保存的文件中的Lua值。 我必须不断地合并2个这样的文件,每次在运行比较软件之前都要手动sorting。 如果可能的话,不需要Lua就可以工作。 文件结构如下所示: SavedVars = { ["1"] = { ["Val1"] = true, ["Val2"] = true, ["Val3"] = false, … ["ValX"] = true, }, ["2"] = { ["Val1"] = true, ["Val2"] = true, ["Val3"] = false, … ["ValX"] = true, }, ["X"] = { ["Val1"] = true, ["Val2"] = true, ["Val3"] = false, … ["ValX"] […]

如何使用MinGW和MSYS构build适用于Windows的Lua?

我有一本叫做Beginning Lua Programming的书,这本书想要翻阅一下原始的基础知识,但是却让我陷入了困境。 这是努力浓缩3页: 引用: The following environment variables are recommended for Windows: UTIL_DIR=c:\program files\utility LUA_DIR=c:\program files\lua\5.1 LUA_CPATH=?.dll;%LUA_DIR%\?.dll LUA_PATH=?.lua;%LUA_DIR%\?.lua The UTIL_DIR variable identifies the utility directory you created in the preceding section. 在此之后,有一段关于设置卢阿的“窗口searchpath”。 基本上,它告诉我查找'doskey /?'的输出 和“path”,自己弄清楚。 我不知道这些是做什么的,如何使用它们,以及它们之间的区别是什么。 我在我的智慧结束。 详细的解释或链接到详细的博客/文章或youtubevideo非常感谢!