萝卜L

导航

节点精灵调试

  • QQ群有VS Code插件,群文件如节点精灵vscode插件的使用.zip
  • 尝试Remote Debugging - ZeroBrane Studio - Lua IDE/editor/debugger for Windows, Mac OSX, and Linux
    • IDE作为服务器端,应用端执行添加了mobdebug库入口的脚本,便链接到IDE了。
  • 尝试print(require 'mobdebug')print(require 'luasocket')print(require 'socket')返回nil。
  • C:\ProgramFiles\ZeroBraneStudio\lualibs\mobdebug\mobdebug.lua、有C:\ProgramFiles\ZeroBraneStudio\lualibs\socket.lua、有C:\ProgramFiles\ZeroBraneStudio\lualibs\socket文件夹(,其下有url.luahttp.lua等(,无tcp.lua))(,无提及的luasocket)。
  • 通过getDir(),查看到/storage/emulated/0/freespace/scripts/test
  • socket在电脑上是ZeroBraneStudio\bin\clibs\socket,是.dll。
  • Install LUA SOCKET LIBRARIES IN ANDROID 😎 - YouTube
    • 手机端命令行终端操作,pkg clang/lua/luarock/lualib-dev,最终用luarock本地编译。
    • lua安装失败,按推荐尝试了lua53;类似的,liblua-dev安装失败,按推荐尝试了liblua53(无lualib-dev53lualib-devlualib53-dev,或liblua53-dev
    • luarock是安装失败,报错Unable to locate package luarocks。又尝试了几次成功了..
    • 同时,无法在终端里使用命令lua运行,提示The program lua is not installed.需使用lua5.3(而非lualua53)。
    • 但可能由于安装的lua53,是哦那个luarocks报错(路径bad interpreter: No such file or directory
    • 需要root?
    • Termux says "'Bad Interpreter: No such file or directory" - Stack Overflow
      • termux中的路径不同于unix。
  • Allow extra LDFLAGS: Useful for linking to Android by develCuy · Pull Request #182 · diegonehab/luasocket · GitHub24 Feb 2019
    • 提供编译支持。
  • termux/linux,使用pwd查看当前路径,使用ls列出当前路径下的文件、文件夹。
    • data/data/com.termux/files/user下有bin,其下有各种库(含lua5.3)。
    • bin下的是命令(而非文件夹),bin下无lua(而是lua5.3
    • 尝试使用ln lua5.3 lua(不可ln lua lua5.3,报错No such file or directory),报错Permission denied
      但可以ln -s lua5.3 lua,建立符号链接。ls中lua的显示颜色是蓝色,lua5.3是绿色
    • data/data/com.termux的上级目录无法ls了,提示Permission denied
      在(手机)系统中允许它的存储权限
      使用ls /sdcard/(,而非不断的cd ..)
    • ln [-s] mobdebug.lua ../libs/mobdebug.lua失败,failed to create hard/symbolic link '../libs/mobdebug.lua' => 'mobdebug.lua': Operation not premitted
    • 执行cd命令后面什么都不加,可以回到当前登录用户的宿主目录(data/data/com.termux/files/home)。
    • 设置环境变量。分,为当前用户/会话,或全局。
      ubuntu系统下关于环境变量的修改(转) - 风轻云淡 - C++博客
    • etc下无profileenvironment
    • ls -[a]l查看实际链接。
    • 可以cd /storage/(参考getDir() of ns),可以遍历(其下有emulated,同getDir()返回的)(没有权限问题(可以cd到,但不能ls))。
    • storage - Termux - How do I create a directory of files accessible outside of Termux? - Android Enthusiasts Stack Exchange
      题主termux的内容,外部看不到,求解,有解。参考:Termux-setup-storage - Termux Wiki
      Symlink to a Termux-private folder on external storage
  • 在谷歌市场搜‘终端’第一个就是Termux。
    • 命令:nnn-manage,nano/vim/emacs-edit。
    • access servers over ssh
    • develop C in clangmakegdb
    • phthongit
    • apt package manager。
    • 参见Package Management - Termux Wiki
    • Termux uses apt and dpkg for package management, similar to Ubuntu or Debian.
      We strongly recommend to use a pkg utility instead of apt directly. It is a wrapper that performs a number of tasks: ..

       

  • Lua环境变量:
    • ns中查看path为/usr/local/share/lua/5.3/?.lua;/usr/local/share/lua/5.3/?/init.lua;/usr/local/lib/lua/5.3/?.lua;/usr/local/lib/lua/5.3/?/init.lua;./?.lua;./?/init.lua
    • 手机lua中查看path为/data/data/com.termux/files/usr/share/lua/5.3/?.lua;data/data/com.termux/files/usr/share/lua/5.3/?/init.lua;/data/data/com.termux/files/usr/lib/lua/5.3/?.lua;/data/data/com.termux/files/usr/lib/lua/5.3/?/init.lua;./?.lua;./?/init.lua
    • 相似地,ns中查看cpath/usr/local/lib/lua/5.3/?.so;/usr/local/lib/lua/5.3/loadall.so;./?.so
    • (在termux中)导航到/usr/下看不到/usr/local
    • ns中os.getenv'LUA_PATH'os.getenv'LUA_CPATH'为空。
    • 关于/usr/local4.9. /usr/local : Local hierarchy
    • 明明就在(termux)/usr/lib/lua/5.3/socket/core.so路径下,但ns无法访问,权限问题?(节点精灵允许存储了)
    • termux能在/sdcard/中看见freespace(ns),但看不见自己(termux)。
  • ns文件路径
    • 文档中的文件读写示例,基于/sdcard/
    • 设置package.path不能写成
    • getDir()/storage/emulated/0/freespace/scripts/test
    • 不能使用相对路径。(用io.open验证)
  • ns目前require函数异样(仅运行lua文档,不记录,不返回)。
  • 以上require 'socket.core'失败

    error loading module 'socket.core' from file '/sdcard/freespace/scripts/libs/socket/core.so':
    dynamic libraries not enabled; check your Lua installation

  • ns项目中,运行对应main.lua(不论当前激活的(项目中的)(.lua)文件)。
  • ns中getDir()返回项目所在的目录(而非执行此函数的脚本所在的目录)。

posted on 2021-03-09 00:18  萝卜L  阅读(615)  评论(0编辑  收藏  举报