lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


I'm guessing you didn't encapsulate the Lua header file(s) in extern "C".

Ben

----- Original Message -----
From: Johannes Hager <hager.j@gmx.de>
Date: Tuesday, June 10, 2003 4:40 pm
Subject: Re: Using Lua in a C(++) program

> Now i have this problem in C++:
> 
> 	/tmp/cc71gCXy.o(.text+0x11): In function `main':
> 	: undefined reference to `lua_open()'
> 	/tmp/cc71gCXy.o(.text+0x1f): In function `main':
> 	: undefined reference to `lua_close(lua_State*)'
> 	collect2: ld returned 1 exit status
> 
> Have someone a gues? I have linked it witch -llua, and the same as c works 
> fine. 
> 
> 	
> 
> > I'm not sure your c++ problem is based on Lua.
> > The line you reported earlier:
> >
> > 	/tmp/ccV9wgqi.o(.eh_frame+0x11): undefined reference to
> > `__gxx_personality_v0'
> >
> > comes from mingw32/gcc when it tries to compile stuff as c++ but
> > doesn't find the necessary runtime libraries when linking it.. I faced
> > this when my source had CAPITAL names (unintentional though it was).
> > The .C suffix confuses mingw to think it's c++.
> >
> > So first thing:
> > - Make sure all your C files are *.c and all -real- c++ files *.cpp.
> > NEVER use capital c. :)
> >
> > If that's not the cure:
> > - Lua itself should compile either as c, or c++ (there really is some
> > difference, under the hood). So i don't think it's that.
> >
> > - If you're still missing the c++ runtime libs, there's probably some
> > link flag or something you need to set. Look with
> > "__gxx_personality_v0" via Google, perhaps?
> >
> > Yours,
> > -ak
> >
> >
> > Johannes Hager kirjoittaa keskiviikkona, 11. kesäkuuta 2003, kello
> >
> > 01:55:
> > > Hi,
> > >
> > > Fine it works. But can anyone tell me how to use lua in a C++ project.
> > > By the
> > > way their was the problem. I have used the gcc but named my file
> > > *.cpp, how
> > > stupid.
> > >
> > >> You need to add -lm to the compile (that's the math library)
> 
> 
>