1
ここではluabindのチュートリアルhttp://www.rasterbar.com/products/luabind/docs.htmlを使ってみようとしていますが、ライブラリの読み込みに問題があります。私は現在luaのバージョン5.1を使用していますので、loadlibの代わりにpackage.loadlibを使用すると思います。私はこれである単純なdllを作った:LuaBindとpackage.loadlib
#include <iostream>
#include <luabind\luabind.hpp>
void greet()
{
std::cout << "Hello world!\n";
}
extern "C" int init(lua_State* L)
{
luabind::open(L);
luabind::module(L)
[
luabind::def("greet", &greet)
];
return 0;
}
これはうまくいく。しかし、私はこのコードを実行しようとすると、私はluaでエラーが発生します:
package.loadlib("LuaTestLib.dll", "init")
greet()
それは挨拶がないと述べています。 DLLから関数を適切にロードするにはどうすればよいですか? package.loadlib
's documentationの最初の2つの文から
名前は「_init」またはその他のバリエーションであることに注意してください。 – lhf