But CEGUI::LuaScriptModule:LuaScriptModule() is defined!
Posted: Sun Sep 07, 2008 04:52
I'm kind of playing around with the demos in CEGUI, thing were going smooth until I tried to get into Lua. I keep getting this error.
when I run this code, this is just the main method and include stuff in my code.
and I compile it in the terminal with this command:
Code: Select all
/tmp/ccuO9gq6.o: In function `main':
test.cpp:(.text+0xa74): undefined reference to `CEGUI::LuaScriptModule::LuaScriptModule()'
collect2: ld returned 1 exit status
when I run this code, this is just the main method and include stuff in my code.
Code: Select all
#include <stdio.h>
#include <stdlib.h>
#include <SDL/SDL.h>
#include <CEGUILua.h>
#include <CEGUI.h>
#include <CEGUIDefaultResourceProvider.h>
#include <RendererModules/OpenGLGUIRenderer/openglrenderer.h>
#include <GL/gl.h>
#include <GL/glu.h>
using namespace CEGUI;
OpenGLRenderer *renderer;
LuaScriptModule* script_module;
Window* myRoot;
int main (int argc, char **argv)
{
SDL_Surface * screen;
atexit (SDL_Quit);
SDL_Init (SDL_INIT_VIDEO);
screen = SDL_SetVideoMode (600, 480, 0, SDL_OPENGL);
if (screen == NULL) {
fprintf (stderr, "Video Initialization Error: %s\n", SDL_GetError ());
exit (1);
}
renderer = new OpenGLRenderer (0, 600, 480, 0);
script_module = new LuaScriptModule();//PROBLEM SEEMS TO BE WITH THIS
new CEGUI::System (renderer);
CEGUI::System::getSingleton().setScriptingModule(script_module);
CEGUI::DefaultResourceProvider* rp = static_cast<CEGUI::DefaultResourceProvider*>
(CEGUI::System::getSingleton().getResourceProvider());
rp->setResourceGroupDirectory("schemes", "./datafiles/schemes/");
rp->setResourceGroupDirectory("imagesets", "./datafiles/imagesets/");
rp->setResourceGroupDirectory("fonts", "./datafiles/fonts/");
rp->setResourceGroupDirectory("layouts", "./datafiles/layouts/");
rp->setResourceGroupDirectory("looknfeels", "./datafiles/looknfeel/");
rp->setResourceGroupDirectory("lua_scripts", "./datafiles/lua_scripts/");
Imageset::setDefaultResourceGroup("imagesets");
Font::setDefaultResourceGroup("fonts");
Scheme::setDefaultResourceGroup("schemes");
WidgetLookManager::setDefaultResourceGroup("looknfeels");
WindowManager::setDefaultResourceGroup("layouts");
ScriptModule::setDefaultResourceGroup("lua_scripts");
CEGUI::SchemeManager::getSingleton().loadScheme("TaharezLook.scheme");
if(! CEGUI::FontManager::getSingleton().isFontPresent( "Commonwealth-10" ) )
CEGUI::FontManager::getSingleton().createFont( "Commonwealth-10.font" );
System::getSingleton().setDefaultMouseCursor( "TaharezLook", "MouseArrow" );
System::getSingleton().setDefaultTooltip( "TaharezLook/Tooltip" );
System::getSingleton().setDefaultMouseCursor( "TaharezLook", "MouseArrow" );
myRoot = WindowManager::getSingleton().loadWindowLayout( "Demo8.layout" );
System::getSingleton().setGUISheet( myRoot );
SDL_ShowCursor (SDL_DISABLE);
SDL_EnableUNICODE (1);
SDL_EnableKeyRepeat (SDL_DEFAULT_REPEAT_DELAY, SDL_DEFAULT_REPEAT_INTERVAL);
main_loop();
}
and I compile it in the terminal with this command:
Code: Select all
gcc test.cpp -I/usr/local/include/CEGUI/ -lSDL -lGL -lGLU -lCEGUIBase -lCEGUIOpenGLRenderer