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路径下了

相关推荐
O_o38137 分钟前
QT多窗口跳转
开发语言·qt
大橘1 小时前
【qml-10】Quick3D实现机器人渲染(mesh)记录
qt·机器人·qml
轩情吖7 小时前
Qt常用控件之QLabel(一)
开发语言·数据库·c++·qt·小程序·qlabel·桌面开发
Larry_Yanan10 小时前
QML学习笔记(四)QML新手入门其二:通过MouseArea让Rectangle实现鼠标三态
笔记·qt·ui
郝学胜-神的一滴11 小时前
QT与Spring Boot通信:实现HTTP请求的完整指南
开发语言·c++·spring boot·后端·qt·程序人生·http
m0_6356474818 小时前
信号与槽已经使用connect语句连接,并且参数也匹配,但是发送信号以后不执行槽函数?
开发语言·qt
机器视觉知识推荐、就业指导19 小时前
QML学习:1.快速了解QML
qt·学习·qml
_nirvana_w_1 天前
PyQt6+OpenCV 实战:打造功能完备的数字图像处理 GUI 系统
人工智能·python·qt·opencv·计算机视觉
KL41801 天前
[QT]常用控件属性一
c++·qt
Larry_Yanan2 天前
QML学习笔记(五)QML新手入门其三:使用Row和Colunm进行简单布局
前端·笔记·qt·学习·ui