开源的lua-studio使用VS2019编译过程

在gitee上下载lua-studio.zip的源代码,这个源代码不能自己被编译会报很多错误,大部分都会放弃,经过我不断的摸索终于编译成功了,记录如下:

1下载luastudio源代码,地址:https://gitee.com/emmm_admin/lua-studio?_from=gitee_search,或者直接搜索lua studio,gitee上的两个下载源都是一样的;

2找到luastudio.sln的工程文件直接用vs2019打开,可以直接编译出来

Lfs.ll ,lua5.1.dll和ResDll.dll共3个文件scintilla的项目已经损坏,不能编译,需要在网上下载一个scintilla的代码来替换,所以luastudio也不能编译,起码确实scintill.dll库:

3,直接移除已经损坏的scintilla工程,并,在gitee上下载一个scintilla,可能会有版本问题

登录 - Gitee.com

删除原来的scintilla文件夹,然后用下载的替代,并把win32下面的SciLexer.vcxproj添加到解决方案中,并在属性中把平台修改成vs2019,单独生成,如果成功就OK.

4,这样就差最后的LuaStudio没有编译成功了,直接也点击luastudio点击生成,第一次编译有180个错误,26个警告,这里可能大部分都放弃了,我们这里一个个错误修改;

错误1,无法打开boost/xxxxxxx,原因是没有加载boost的目录,自己添加boost;

错误数变成了259,错误增加了。。。。。

2再看第一个错误是string_view不是std的成员,string_view是c++17才有的,我们当前的c++选择的是14,换成最新的c++20试试把,其实还可以把string_view换成string我在vs2015试过,这样可以;

3提示/GM和c++20不兼容,百度没有找到解决,那就换成c++17把,这样又变成了一堆错误,头大呀;

//下面修改几个明显的

4  Cls找不到标识符,这个是.h文件中没有Cls(); 找到   bool Cls();的定义,然后添加到头文件中

5 SCI_GETTWOPHASEDRAW没有定义,通过搜索发现是#ifdef INCLUDE_DEPRECATED_FEATURES条件编译没有打开,导致没有,我们直接在前面#define  INCLUDE_DEPRECATED_FEATURES或者添加到属性的预处理器定义中;

6 SCI_SETUSEPALETTE 没有定义,这个确实找不到,就先屏蔽掉吧,改成return 0;

7这样就还有89个错误了,每次都先修改第一个错误,提示没有stdafx.h文件;通过搜索发现在src目录下有StdAfx.h,可能是没有添加进来include吧,先添加进来include中,或者直接修改成

#include  "../../src/StdAfx.h"好像还行没有修改好,算了关闭头文件staafx.h头文件;然后把找到stdafx.h的换成./stdafx.h,因为src里面还是有stdafx.h的,这样就还剩88个错误了;

8 “auto_ptr”不是std成员,在c++17里面好像没有auto_ptr了,修改试了std:shared_ptr好像可以,把全部的std::auto_ptr替换成了std::shared_ptr就可以了,88个错误竟然统统消失了,生成了lua_studio.exe文件。

9直接运行exe文件,会运行一下然后就退出了,修改了全部的错误,竟然不能运行,经过反复的摸索和仿真发现是加载在app.cpp文件中,加载IDR_MAINFRAM时候失败了,打开资源视图发现有一个ICON和Accelerator以及一个Menu都叫这个名字,或许是这个原因导致ID错误了,通过新建多文档的项目发现确实上面三个都叫IDR_MAINFRAME的id,这里不是问题,后面通过尝试发现插入一个新的dialog或者修改了视图文件后,就能显示图形界面了,如下:

具体的原因,可能是系统自带的rc资源有问题,或者兼容性的问题,重新修改资源视图后,会自动产生新的resouce.h来覆盖以前的资源,这样就能现成出界面了。(界面上传失败了)

luastudio可以单步仿真lua ,并能显示打印信息,能查看变量值,功能还是很强大,就是现在最新版本是收费的,所以导致大家用的比较少,这个开源的版本最开始是在github上的,后面又被上传到了gitee上,这个开源的版本比较老,已经是13年前的代码了,主要是编译问题比较多,用来做学习或者二次开发的人比较少,我把自己的开发过程记录下来,共大家学习,并创建了一个开源的学习交流群,欢迎大家加入QQ群:628070855,这里欢迎大家讨论各种软件开发的技术问题。。。。。。

我把自己修改好的代码放在了csdn上,欢迎大家修改并用来做二次开发。。。。。

https://download.csdn.net/download/areshan133/27431496

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值