Compiling Tolua++ without SCons

Compiling Tolua++ without SCons

要看原版的点链接

Compiling Tolua++ without SCons

I wanted to post this on the tolua++ site but they dont have a wiki.

The tolua++ INSTALL file lets you figure out how to compile it without SCons. Its easy enough, but I wanted to save the people the 5 ( err... 15 ) minutes they need to figure this out.



Using Visual Studio 2003

DLL

Open the "File->New Project" menu. From the project types listbox, select "Visual C++ Projects->Win32". From the Templates listbox, select "Win32 project". For a project name, type in "tolua++".

When the wizard opens, select "Application Settings" on the right hand side. Choose "DLL" and click 'Finish'.

In the Solution Explorer right click on "source files" and select "Add->Existing Item". Browse to the location of the tolua++\src\lib directory. Highlight all .c and .h files and add them to the project. You may also optionally want to add the tolua++.h file from the include directory into the "header files" folder.

Right click on the tolua++ project in the Solution Explorer and select "Properties".

Under the "C/C++ -> General" section select the "Additional include directories" option. Navigate to the location of your Lua include files.

Under the "C/C++ -> Preprocessor" section add the following: TOLUA_API=extern __declspec(dllexport) Under the "C/C++ -> Precompiled headers" section, turn off precompiled headers. Under the "Linker -> General" section select the "additional library directories" option and navigate to the location of your Lua .lib library files. Under the "Linker -> Input" section add lua.lib and lualib.lib (assuming those are your lua libraries).

Compiling the project should result in a tolua++.dll.

EXE

To create tolua++.exe, open the "File->New Project" menu, select Visual C++-> Win32 -> Win32 console project. Add the files tolua.c and toluabind.c to the project.

You will need to add all of the relevant lua include and library directories to this project. The process is the same as above. Under the "C/C++ -> Preprocessor" section, add: TOLUA_API=extern __declspec(dllimport), ... etc ...

Note that for v1.0.92【重剑注:俺就用的这个版本, I had to remove the TOLUA_API that appears in toluabind.c:

int TOLUA_API tolua_tolua_open (lua_State* tolua_S)
becomes
int tolua_tolua_open (lua_State* tolua_S)

Using Visual Studio 2005

The same comments as above (for vs2003) generally apply, although some minor tweaks need to be made.

Note that, due to VS' poor c99 support, 'toluabind.c' in the "EXE" build will not compile. There are many lines that look like:

  int  top; top  =  lua_gettop(tolua_S);  static  unsigned  char  B[]  =  {  

 

These need to be changed to:

  int  top  =  lua_gettop(tolua_S);  static  unsigned  char  B[]  =  {  

or similar.

Tested with vs2005 (no service packs) and tolua++ 1.0.91.

你可能感兴趣的:(Compiling Tolua++ without SCons)