Comments (6)
A first example is from github actions where I test Lua modules on Windows:
https://github.com/khvzak/mlua/blob/master/.github/workflows/main.yml#L186
A second example is using Windows + MSVC
- Download binary Lua dll & lib (I used the luabinaries project, this file)
- Unzip to
lua51
folder - Go to
mlua/examples/module
- From git shell
$ LUA_INC=$HOME/Downloads/lua51/include LUA_LIB=$HOME/Downloads/lua51 LUA_LIB_NAME=lua5.1 cargo build --features lua51
Build ok, we got mlua/target/debug/rust_module.dll
For testing:
- Go to
mlua/target/debug
- Run
$ lua5.1 -e 'print(require("rust_module").sum(2,3))'
5
$ lua5.1 -e 'print(require("rust_module").used_memory())'
35441
Windows 10, Latest MSVC Community, Git, Rust 1.49.0
from mlua.
Thank you very much for your reply. I succeeded !!!
The reason for the failure is that Lua's lib was downloaded incorrectly. I succeeded in both Lua5.1 and Lua5.4
from mlua.
Now I have a new problem. The compiled DLL is required and executed correctly by Lua54.exe, but not by LuaQuire in Rust. Any solution,
like this
`use mlua::prelude::*;
fn main() -> LuaResult<()> {
let lua = unsafe {Lua::new()};
lua.load(r#"print(require("my_module").sum(2,3))"#).exec()?;
Ok(())
}`
from mlua.
The line
let lua = unsafe {Lua::new()};
should be replaced with
let lua = unsafe { Lua::unsafe_new() };
to allow loading C modules
from mlua.
DLL is compiled in features=['lua54','module'] mode
The rust project is compliated with eatures=['lua54','vendored'] mode
from mlua.
Lua library does not load properly without lua54. DLL, but I cannot find a way to link lua54. DLL to the library
from mlua.
Related Issues (20)
- Support Audio manipulation HOT 2
- Support UI HOT 2
- Error compiling module to wasm32-unknown-emscripten
- Terra integration?
- Lifetime Issues with Scope HOT 3
- In a module best way to deal with async HOT 4
- Serialization: Recursive table detection yields false positives HOT 1
- Allow setting luau compiler options when loading with `require` HOT 2
- Builds fail with useless errors if user's global Cargo target-dir is changed HOT 3
- Send feature flag HOT 2
- bug: `c_void` not a Sync HOT 3
- Limiting script execution time (a question and a bug report) HOT 2
- Deserialize from a table with function HOT 2
- Async functions from different modules treated as normal coroutines HOT 4
- How to convert json to `mlua::Value` like `c-json.decode` HOT 4
- how to method UserData method self.vars? HOT 2
- table.concat expect got "hello" HOT 2
- Get `registry_id` from `RegistryKey` HOT 3
- Passing a Lua provided function makes Drop in mlua v0.10 code unwrap() HOT 3
- Suggestions for simplifying module creation
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mlua.