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

相关推荐
初阳7858 小时前
【基于Qt5仿音乐播放器(六)】——细节打磨与总结
qt·1024程序员节
小鱼仙官17 小时前
使用Qt封装C/C++ 动态库 用于第三方调用
c语言·c++·qt
扶尔魔ocy20 小时前
【QT OpenGL】知识点编目及传送门
qt·opengl·osg
qq_4017004121 小时前
Qt Modbus 源码剖析:从 QModbusClient 到工业级通信框架
开发语言·qt·系统架构
GreenHandBruce21 小时前
基于Qt 6.12.0 + FFmpeg 9.0.2的4k视频播放器
qt·ffmpeg·音视频
誰能久伴不乏1 天前
桌面客户端的运行日志系统:SQLite 分块 + 独立写线程 + 文本降级
数据库·c++·qt·架构·sqlite
沫璃染墨2 天前
《Qt从零入门系列(十五):Qt线程安全与锁机制详解——从QMutex到RAII与读写锁实战》
开发语言·c++·qt·安全·交互·线程·qt6.3
小豆庄2 天前
视频脱敏引擎的追踪难题:转场误判定、ID撞号和淡入窗口
qt·算法·目标检测·音视频·视频·敏捷流程
小灰灰搞电子2 天前
Qt 中使用 QSettings 存储结构体数据详解
开发语言·qt
LaoWaiHang3 天前
关于Qt中鼠标左键事件被子控件截留的处理
qt