11 days later
  • Edited

does quickrt still works?

I find that there are some errors
I simply remove history and ui and path related part and then it works.

quickrt.lua:
remove luart_path

local luart_path='.'
package.cpath = package.cpath..";"..luart_path

history.lua:
remove all

local history = {}
return history

readline.lua:
comment ui lines:

-- local ui = require "ui"
      -- ui.update()

rtc quickrt.lua src

error line:

luart_path = sys.File(arg[0]).directory.parent.parent.fullpath.."/modules/?/?.dll"

it looks like arg variable changed:

luart1.9.exe -e "print(arg[0])"
got: -e

luart1.7.exe -e "print(arg[0])"
path/luart1.7.exe

lua_puc.exe -e "print(arg[0])"
path/lua_puc.exe

and ui module not exist any more:

luart1.9.exe -e print(require'ui')
print(require'ui'):1: module 'ui' not found


luart1.7.exe -e print(require'ui')
ui: 00000000006239f0

and quickrt actually does not need ui module so I just delete it .

[Login to see the link]

    ruby thank you ruby for the report I will check this

    • Edited

    Hi Ruby,

    Everything works as expected on my side.

    To build QuickRT as an executable, you have to use the Makefile in the src\core directory.
    QuickRT and LuaRT Studio uses a special lua54.dll that contains the ui module, make it possible to use it with a console app like QuickRT.

    Don't use the QuickRT code from the GitHub repository, I don't have updated it yet.

    Btw, the changes about the arg table is here since LuaRT 1.8.0
    See [Login to see the link]

    ok. in my country I almost can not access github, especially download .zip from github, so I have to build it myself.

    To build QuickRT :

    • go to src\core in the LuaRT folder
    • enter the following command : nmake buildtools
    • it will build QuickRT and the LuaRT interpreter for LuaRT Studio

    How do you get LuaRT sources if you cannot access GitHub ? Maybe I should put the sources available for downloading on the LuaRT website ?

    • Edited

    I download source from [Login to see the link], a ghost github mirror. but it does not include github release download.

    maybe you can make a gitlab mirror.

    I strongly recommend integrating the c module into the core, because the c module is basic and powerful!

    Yes I understand that, but it will make lua54.dll more fat. Maybe once users are using it and making reports about bugs. It's too soon to make it in the LuaRT core.

    just an idea: freely selectable modules

    a TUI or GUI to select your modules to be static linked in your luart.exe

    [] c
    [ ] math
    [ ] debug
    [ ] utf8

    [*] string
    [] table
    [*] os
    [ ] io
    [*] coroutine
    [ ] compression
    [ ] sysutil
    [ ] ui
    ...

      Yes it's a good idea, making it available for wrtc

      ruby I have started a similar program - see [Login to see the link]. I can save my programs and parameters in it and generate an exe file from it. This means I don't always have to enter the parameters again. It worked with LuaRT 1.8. Now I am about to test it on LuRT 1.9.

      9 days later

      Samir Could you please add a mouse module? This mouse module contains the function of moving and clicking the mouse, as well as the function of finding the image on the screen (returning the target image coordinates).

        Samir Could you release a luajit version of luajitRT, which will provide incoherent speed while still natively coming with cffi?

          luaFly
          Mouse module can be easily implemented using C FFI module and the SendInput() Windows API function

          I don't understand by image target on the screen ...

            luaFly
            Maybe someone will implement this, but I don't do that as LuaRT main feature is to stick to current Lua VM to not break Lua ecosystem as LuaJIT do, by using still Lua 5.1 since near 20 years.

            The question is why LuaJIT authors don't implement a Lua 5.4 JIT VM 😉

              Samir

              Samir luart contains a keyboard module but no mouse module, which is not uniform in form. The function I'm talking about works a bit like pyautogui.locateOnScreen(), which is very useful.

              Samir The advantage of luajit is that the execution is very fast. Indeed, luajit sacrifices some flexibility for extreme speed (but the official lua vm also sacrifices a lot of flexibility for extreme compact size). Another advantage of luajit is that it has a complete and time-tested mature ffi, and all battery libraries of luajitrt can be written in pure lua via ffi.

              Samir I found that the x86 version of the luart would crash at the start of the running. the problem happen in luart studio, c model and build designer and so on.

                Powered by: FreeFlarum.
                (remove this footer)