使用Eclipse IDE将Lua嵌入到C++和wxWidgets中

我是Lua的新手,所以如果这是一个相当简单的问题,我很抱歉,但这让我很疯狂。在我的上一个线程A simple query on calling Lua 5.2 from C++中,我使用了一个简单的C++代码将Lua嵌入其中。事情进展得很顺利,但是当我将这个概念转移到一个更复杂的项目时,同样的代码不起作用。我检查了很多资料,但找不到解决方案。

这是我的代码:

#include "External/include/lua.hpp"

lua_State *luastate =NULL;

IMPLEMENT_APP(ScienceSuitApp);

bool ScienceSuitApp::OnInit()
{

    luastate=luaL_newstate();
    luaL_openlibs(luastate);
        ScienceSuitFrame* frame = new ScienceSuitFrame(0L);
       frame->Show();

      return true;
 }

现在当我尝试编译代码时,我会得到luar_openlibs(luastate)行的无效参数错误。编译器给出的错误:

Invalid arguments '
Candidates are:
void luaL_openlibs(*)
'       ScienceSuitApp.cpp      /ScienceLab     line 33     Semantic Error

每当我调用一个接受lua_State作为参数的Lua函数(例如luaL_dostring等)就会发生这种情况。顺便说一下,如果这应该给出一个线索,我正在使用Eclipse作为IDE和wxWidgets作为GUI。我的这个设置的配置是: enter image description here

我“认为”我已经解决了这个问题。这源于Eclipse抛出“语义错误”而不是“语法错误”的事实。因此,我遵循了Eclipse CDT shows semantic errors, but compilation is ok的建议。但现在我的问题是它与Eclipse IDT中的索引有什么关系呢?感觉就像我在使用Eclipse而不知道任何它的内部。

点赞