nmake编译Qt第三方库出现无法打开包含文件type_traits

最近需要为个人项目ShaderLab添加内嵌的代码编辑窗口功能,支持语法高亮和Intellisense,最初使用了QCodeEditor,发现这个第三方的库对词法分析的实现效果不太行.

代码换行后直接缩进到首行,无法定位到前一句的首行

考虑换QScintilla,支持语法高亮、错误指示、自动补全(code completion)和函数提示(call tips),毕竟Notepad++是基于Scintilla的开源编辑器,并且提供QT的支持,功能肯定是比一些独立开发者开发的代码编辑器要强大的

源码编译参考该网址

在用nmake编译的过程中出现无法打开包括打开或包括文件"type_traits"

找了很多博客,也尝试修改qmake生成的makefile文件,还是不行。

最终的解决办法可以参考这位大佬的博客

打开配置环境变量,在用户变量新建INCLUDE和LIB

nmake编译时会搜寻用户变量下的INCLUDE文件夹作为包含头文件,LIB目录下的文件夹作为链接目录。

接下来用everything寻找type_traits

定位到MSVC的include目录,我当前机子的目录是C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.28.29333\include

重新打开cmd使环境变量生效,然后执行nmake

会发现还是缺少某某头文件,还是按照上述的套路配置。

接下来会缺少"xxx.lib"

也是按照上述的套路配置,但是要加在用户变量的LIB目录下

如果提示缺少"rc.exe",用everything找到它

加到Path目录下

可以看到已经成功生成了release版本的dll

要生成Debug版本的dll请使用该语句nmake -f Makefile.Debug

最后使用nmake install

可以看到nmake把生成的dll和lib拷贝到qt的bin和lib路径下了

相关推荐
娇娇yyyyyy7 小时前
QT编程(18): Qt QItemSelectionModel介绍
开发语言·qt
sthnyph8 小时前
QT开发:事件循环与处理机制的概念和流程概括性总结
开发语言·qt
机器视觉知识推荐、就业指导12 小时前
LVGL真能动摇Qt的地位吗?
开发语言·qt·系统架构
羊小猪~~17 小时前
【QT】--QWIdget与QDialog
开发语言·数据库·c++·后端·qt·求职招聘
Blasit18 小时前
Qt 程序打包,运行提示找不到或无法加载平台插件 qwindows.dll
开发语言·windows·qt
C++ 老炮儿的技术栈18 小时前
c++常见配置文件格式 JSON、INI、XML、YAML 它们如何解析
xml·开发语言·c++·windows·qt·json
镜中月ss18 小时前
QT中的资源树
开发语言·qt·qml
Laurence18 小时前
GitHub 1.2 万星 Qt 项目 VNote 源码解读(一):核心类与主流程
qt·github·源码·代码·介绍·解读·vnote
Hello.Reader2 天前
从零开始安装 Qt完整新手教程(1)
开发语言·qt
娇娇yyyyyy2 天前
QT编程(19) : Qt 实现自定义delegate
开发语言·数据库·qt