Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Visual Studio 2015编译Lua 5.3.4遇到的坑

Visual Studio 2015编译Lua 5.3.4遇到的坑

作者头像
meteoric
发布于 2018-11-20 02:55:05
发布于 2018-11-20 02:55:05
9440
举报
文章被收录于专栏:游戏杂谈游戏杂谈

被坑的不浅,遇到错误:“ LNK1561:必须定义入口点”,解决方案删除再建,步骤一遍一遍操作,还是报错。如下图所示:

首先,它必须要改成DLL或者LIB(动态/静态库),如果是应用程序那必须要提供main函数的主入口。网上提供的方法,比如改 系统 - 子系统,各种方法都试过了,始终是报错。

冷静了一下,觉得是新建空项目那里有问题。然后就改创建一个win32的空项目。

再添加lua/src目录下面的 *.h *.c文件,结果发现可以正常编译。我就好奇,到底哪一步出了问题,经过对比现有主要有两处不一样。

可是我在属性里,明明已经将配置类型改为dll了啊,如下图:

我突然发现还有地方是Application,再看一下相关的平台,发现选择的平台与要生成的目标平台不一致导致的。改为选择“所有平台”,然后重新生成,通过!

我配置的平台是 x86,它选择生成的平台却是 win32,导致我无法正常生成。预处理的定义如下:

WIN32;_DEBUG;_WINDOWS;_USRDLL;LUA_LIB_EXPORTS;LUA_BUILD_AS_DLL

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-12-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
在windows系统用visual studio 2017生成Lua解释器、编译器、动态链接库dll、静态链接库lib
下载lua官方的tar.gz文件( https://www.lua.org/download.html  ),解压得到src文件夹
coffee1
2024/03/16
3420
c++动态库和静态库的区别_静态库里面包含动态库
C++静态库与动态库
全栈程序员站长
2022/11/11
2K0
Win32编程之静态库编写与使用.动态链接库的编写与使用
  静态库其实就是解决模块开发的一种解决方案.在以前.我们写代码的时候.每个人都可以独立写一个项目.但是现在不行了.一个项目往往要很多人一起去编写.而其中用到的技术就类似于静态库.
IBinary
2022/05/10
8070
Win32编程之静态库编写与使用.动态链接库的编写与使用
lnk2019无法解析的外部符号_declspec_error lnk1120无法解析的外部命令
3.点击“键入或选择新平台”下拉框,选”x64″,然后点击“确定”
全栈程序员站长
2022/11/08
1.8K0
lnk2019无法解析的外部符号_declspec_error lnk1120无法解析的外部命令
编译 EasyHook 32-bit/64-bit 静态库 Lib
EasyHook 是 Windows 平台下开源的 APIHOOK 工具库,因其开源有 64 位版本而注广为流传,微软也有提供 64 位 APIHOOK 的代码,但是要收费的。最近公司让我做一个 HOOK 的名单功能,顺便就研究了一下 EasyHook 的静态库编译和使用,也弥补一下曾经再这方面耗费的心血。下图是 HOOK 成功后 DebugView 的输出。
我与梦想有个约会
2023/10/20
4670
编译 EasyHook 32-bit/64-bit 静态库 Lib
使用FFmpeg4.3.1的SDK官方开发包编译ffmpeg.c
本文使用官方发布的 SDK 开发包来亲手编译 ffmpeg.c 文件,编译成功后可以对其内部的源码按照我们的需求进行修改,为后面的转码器的开发做个铺垫。
Gnep@97
2024/01/04
3810
使用FFmpeg4.3.1的SDK官方开发包编译ffmpeg.c
c++DLL编程详解
DLL(Dynamic Link Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。 静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib中的指令都被直接包含在最终生成的EXE文件中了。但是若使用DLL,该DLL不必被包含在最终EXE文件中,EXE文件执行时可以“动态”地引用和卸载这个与EXE独立的DLL文件。静态链接库和动态链接库的另外一个区别在于静态链接库
拾点阳光
2018/05/10
2.4K0
VS2015中用C++创建MFC DLL动态库「建议收藏」
2 点击下一步,在应用程序设置里选择带静态链接的MFC规则,这个主要为了以静态库的形式生成MFC dll,便于动态库可以移植到其它编程语言或者其它计算机系统里调用。
全栈程序员站长
2022/11/11
1.9K0
LNK2019 无法解析的外部符号 WinMain,该符号在函数 "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) 中被引用
一般情况下,如果是windows程序,那么WinMain是入口函数,在VS中新建项目为“win32项目”
vv彭
2020/10/27
17.6K0
LNK2019	无法解析的外部符号 WinMain,该符号在函数 "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) 中被引用
vs生成动态库及使用动态库
3.新建source.def (是为了在不同编译环境下都可以使用)
全栈程序员站长
2022/11/09
2.6K0
vs生成动态库及使用动态库
oSIP编译_编译与解释
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说oSIP编译_编译与解释,希望能够帮助大家进步!!!
Java架构师必看
2022/07/12
1.7K0
lib文件和dll文件的区别_dll2lib
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/167993.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/20
3.1K0
如何编译和调试Python内核源码?
Python的官方默认实现为CPython,即C语言实现(主要指解释器的实现,其他实现见Other Interpreter Implementations)。CPython的源代码可以从官网pyhton.org或者 github.com/python/cpython 获取,目前最新的稳定版本为3.8.0,于2019.10.14发布。这里,从官网 https://www.python.org/downloads/release/python-380/ 下载源码压缩包,如下图所示,
李拜六不开鑫
2019/10/17
1.6K0
Visual Studio 2017编译Lua源代码
打开Visual Studio,新建一个 Visual C++空项目 ,项目名称为Lua。 打开 项目属性页 ,设置 目标平台(Win32或x64),在 配置属性-常规-项目默认值 中选择 配置类型 为 应用程序(.exe) ,保存更改。 将从Lua源代码压缩包中提取的 src 文件夹复制到项目文件夹中,在 解决方案资源管理器 菜单栏中勾选 显示所有文件 ,然后选择 src 文件夹,通过右键菜单中的 包括在项目中 选项将 src 文件夹添加到项目中。 展开 src 文件夹,选中文件 luac.c ,通过右键菜单的 从项目中排除 选项将文件 luac.c 从项目中移除。 在Visual Studio菜单栏中选择 生成-生成 Lua 来生成可执行程序。
战神伽罗
2020/02/25
3.3K0
C++动态库和静态库_动态库和静态库调用方法
从事软件工作也有两年了,C++静态库和动态库也用了不少,但都是依葫芦画瓢,一直没具体去研究一下二者的区别,加载方式等,今天花时间看了几篇博客,重新学习了一下,做出如下笔记。
全栈程序员站长
2022/11/11
3.3K0
C++动态库和静态库_动态库和静态库调用方法
OpenCV配置——在Visual Studio中使用OpenCV
OpenCV是图像领域经常会用到的工具库函数的集合,有C/C++,Java和Python等语言的接口,并且适用于Windows,Linux,Mac OS桌面开发平台和Android 和IOS移动开发平台。目前已经出了1.x系列和2.x系列,3.0 Beta版也已经出了。OpenCV配置起来还是挺费事的,虽然网上已经有很多很全面也很有用的参考文章,我还是打算把自己配置的过程写下来,以后肯定还会配置这个东西,希望到时候有个方便的参考。
王云峰
2019/12/25
1.7K0
Windows下使用VS2013编译使用SDL库
Simple DirectMedia Layer是一个跨平台开发库,旨在通过OpenGL和Direct3D提供对音频,键盘,鼠标,操纵杆和图形硬件的低级访问。 视频播放软件,仿真器和流行游戏(包括Valve屡获殊荣的目录和许多Humble Bundle游戏)都使用它。
ccf19881030
2020/07/23
3.6K0
Windows下使用VS2013编译使用SDL库
Windows下Lua的下载与安装使用基于Visual Studio编译器
本文旨在Windows平台下基于Visual Studio 编译器能够快速使用Lua
晨星成焰
2024/09/07
8240
Windows下Lua的下载与安装使用基于Visual Studio编译器
更新:Visual Studio配置C++的GDAL库
  本文介绍在Visual Studio软件中配置、编译C++环境下GDAL库、SQLite环境与PROJ库的详细方法。
疯狂学习GIS
2024/07/22
6310
更新:Visual Studio配置C++的GDAL库
【C++ 语言】Visual Studio 配置 POSIX 线程 ( Windows 不支持 POSIX | 配置文件下载 | 库文件说明 | 配置过程 )
1. POSIX 线程局限性 : 在 Android , Linux , UNIX , MAC 中可以直接使用 POSIX , Windows 不可以直接使用 ;
韩曙亮
2023/03/27
1.3K0
【C++ 语言】Visual Studio 配置 POSIX 线程 ( Windows 不支持 POSIX | 配置文件下载 | 库文件说明 | 配置过程  )
推荐阅读
相关推荐
在windows系统用visual studio 2017生成Lua解释器、编译器、动态链接库dll、静态链接库lib
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档