文档章节

用vs2013编译lua静态库

AndyZhouX
 AndyZhouX
发布于 2017/08/31 19:28
字数 374
阅读 4
收藏 0
Lua

1.下载lua源码

2.在VS2013中新建一个静态库项目,项目命名为lua  
  a. 选择新建 Win32 console project  

  b. 在wizard界面选择 static Library;不选择Precomplied Header(预编译头)

3.往工程中添加代码  

   a. 复制 F:\lua-5.x\src 目录下的*.h文件到项目的Header Files目录下 

   b. 复制 F:\lua-5.x\src 目录下的*.c文件到项目的Code   Files目录下

        注意: 需要注意的是 lua.c  和luac.c 不能拷贝进去,这两个文件不能编译

4.   配置项目的属性,在项目的“配置属性” 界面中操作  

  a. Configuration Properties -> C/C++  -> General -> Additional Include Directories  

       添加 F:\lua-5.x\src

  b. Configuration Properties -> C/C++  -> Advanced -> compile as  

         这里的选择将影响后面代码中如何指定编译链接方式,后面的测试选择的是Compile as C code

5.  在配置属性->c/c++/预处理器定义下添加_CRT_SECURE_NO_WARNINGS

此时编译就会产生一个静态库了。

 

测试

新建一个新的win32控制台工程Test。配置:

a) 在Test属性中配置VC++ Directories > Library Directories 添加第5步编译出的lualib.lib的路径

b) 在Test属性中配置C/C++ > Genaral > Additional Include Directories 添加lua源代码所在目录

c) 在Test属性中配置Linker > Input > Additional Depencies 添加lualib.lib

添加一个main.cpp

 

#include "stdafx.h"
using namespace std;
#include <iostream>

#pragma comment(lib,"lua.lib")

#include "lua.hpp"

int _tmain(int argc, _TCHAR* argv[])
{

    lua_State *l = luaL_newstate();
    luaL_openlibs(l);
    luaL_dofile(l, "D:/CodeTest/test.lua");
    lua_close(l);
    return 0;
}

© 著作权归作者所有

共有 人打赏支持
AndyZhouX
粉丝 2
博文 151
码字总数 102410
作品 0
深圳
程序员
四种环境下编译生成nanomsg库

VS2013编译生成nanomsg库文件 因为工作中用到了nanomsg,又需要编译成库来使用,发现网上资料很少,所以做此记录。 编译准备,CMake工具软件和下载好的nanomsg源码包。我的是CMake 3.6.2,n...

容我三思兮
2017/04/14
0
0
VS 2015 - Win XP (v140_xp) 编译工具 ucrtbased.dll缺失

Visual Studio 2015 - Windows XP (v140_xp) 编译工具 ucrtbased.dll缺失 先写结论,最好不要使用VS2015-WinXP编译工具来编译VC++程序,因为你最终会发现,编译出来的程序如果是动态链接到运...

郝槟楠
07/03
0
0
用VC编译lua源码,生成lua语言的解释器和编译器

用VC编译lua源码,生成lua语言的解释器和编译器 1.去网址下载源码 http://www.lua.org/download.html 2.装一个VC++,我用的是VC6.0 3.接下来我们开始编译源码,我们需要编译: 一个静态库 一个动...

jeffjade
2014/08/31
0
0
关于vs2012/2013的C编译器生成的exe的向后兼容xp的问题

转自:http://blog.sina.com.cn/s/blog_5f2e119b0101s2uy.html 问题一:编译出来的exe在xp上面运行提示“不是有效的win32应用程序” 在vs2012/2013版本里面,其 自带的c编译器cl.exe,若直接...

薛蕊
06/26
0
0
使用VS2013编译ICE静态库

@鉴客 你好,想跟你请教个问题:我最近在学习使用ICE,由于我用的其他库都是使用MT编译的,但是直接用ICE官网下载安装的包不能用MT。。。没办法只能下ICE的源码来编译成静态库。。网上搜到你...

九月城
2015/04/22
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

oracle 安装 PL/SQL Developer连接64位Oracle免安装配置

PL/SQL Developer连接64位Oracle 在64位系统上安装64位的Oracle数据库,但是没有对应的64位PL/SQL Developer,此时就不能使用PL/SQL Developer来进行直接连接的,所以要想实现连接还得需要其...

PeakFang-BOK
3分钟前
0
0
裁员寒冬袭来,30岁还在CRUD的Java程序员,拿什么安身立命?

就在近日,智联招聘公布的数据更是侧面印证了很多公司“瘦身”的事实:“2018年第二季度,小微企业用人需求较第一季度平均下降26.6%”。 裁员大潮正滚滚向前,席卷各行各业! 你做好失业的准...

Java填坑之路
6分钟前
0
0
第一章:什么是SpringCloud

第一章:什么是SpringCloud 何为微服务 在了解 SpringCloud之前,我们先来大致了解下 微服务这个概念吧。 传统单体架构 单体架构在小微企业比较常见,典型代表就是一个应用、一个数据库、一个...

DemonsI
11分钟前
0
0
环境搭建之八-- node.js

1.node.js官网下载64位二进制压缩包 node-v8.12.0-linux-x64.tar.xz 2.解压文件 2.1 xz格式文件为 tar格式 xz -d node-v8.12.0-linux-x64.tar.xz 此时文件已经转变为 node-v8.12.0-linux-x64...

imbiao
15分钟前
0
0
JVM调优浅谈

1.数据类型 java虚拟机中,数据类型可以分为两类:基本类型和引用类型。 基本类型的变量保存原始值,即:它代表的值就是数值本身,而引用类型的变量保存引用值。 “引用值”代表了某个对象的...

xtof
19分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部