2016-05-29 6 views
3

C-to-Lua実装のexamples onlineの大半は、C言語プログラムがLuaステートとコンパイラを使いこなしていて、正しく動作させるために特別な方法で両方のファイルをコンパイルしています。LuaにCライブラリを含める

しかし、Luaプログラムで使用されることをCプログラムが知らないと、LuaからC関数を呼び出す方法はありますか?

私はLuaのライブラリをロードするようなものを意味:私はオンラインで見つけるC-TO-のLuaの例はあなたがいないだけを持っていると言うしながら、それを行うために、私は、標準のLuaインタプリタから

module = require("/path/library") 
module.doSomething() 

を呼び出しますwhit Luaに合うようにあなたのCプログラムを修正することができますが、特別なやり方でそれらをコンパイルする必要もあります。

また、Luaで使われることを知っているCモジュールの標準LuaインタプリタからC関数を呼び出すことは可能ですか?

私はそれが何らかの助けになるかもしれないのか分かりませんが、私はLuaJITを使っています。

+2

LuaJITはFFIをサポートしています。 – lhf

+0

ああ、今はそんなに愚かな気がする。 – user6245072

+1

通常のLUAで動作するLUAFFIライブラリとエイリアンライブラリもあります。そこにAntもTiny C(libtcc)にバインドしています。 – moteus

答えて

0

LuaJITに統合されているFFI libraryを使用してください。

関連する問題