Lua Learning notes vs2013 How to invoke Lua in C + + (this is a reprint tutorial) I tried it completely.
First, the preparatory work
1, download Lua source code, Address: http://www.lua.org/download.html (I use the latest version of the current 5.2.3)
2, the source is stacked on the appropriate disk (my in D, path D:/LUA-5.2.3/SRC)
3. Open vs2013 to create a new Win32 Console application (Win32 console project), I named him Lualib
4, after the confirmation, the Application wizard will pop up the prompt box, click Next. Application type select Static library, add option to remove precompiled header (precomplied header), click Done.
5. Add the header file (. h) to the project and the source code (. C)
1) Copy all the. h files in the D:/lua-5.2.3/src to the header files
2) Copy all. c files in the D:/LUA-5.2.3/SRC to the source file (Code files)
6. Configuration item properties, opening project---Properties--Configuration properties
1) in the C + + item midpoint Open the general, the first additional inclusion directory fill in D:/LUA-5.2.3/SRC
2) at the midpoint of C + + items, the second is compiled to select compile to C code (/TC)
7. Build the project, generate the Lua.lib file in the debug (Release) file after the build is successful. Here I generated the times wrong:
Error c4996: ' fopen ': This function or variable could be unsafe
If this error occurs, you will need to add the _crt_secure_no_warnings to the preprocessor definition in the property page to generate it again.
Second, call Lua in C + + code
1, the new Win32 Console application program, named Testlua, the back of the need not change
2. Add a lualib reference to the common properties of the project
3, in C + + items in the middle of the general, the first add-on included in the directory to fill in D:/LUA-5.2.3/SRC
4. Write code in TestLua.cpp
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
#include <iostream>
extern "C"
{
#include <lua.h>
#include <lualib.h>
#include <lauxlib.h>
}
int _tmain (int argc, _tchar* argv[])
{
using namespace Std;
Lua_state *l = Lual_newstate ();
Lual_openlibs (L);
Lual_dofile (L, "Test.lua");
Lua_close (L);
Cin.get ();
return 0;
}
5, in the Testlua directory into the pre-written Test.lua file
6. Set Testlua as the startup item and run the project
vs2013 how to invoke Lua in C + + (ii)