社区
驱动开发/核心开发
帖子详情
奇怪!!!的驱动编译问题
sukui888
2012-04-26 10:30:19
用WDK编译驱动的时候,我引用了WDK/inc/api里面的头文件d3d10umddi.h
(只引用了这一个头文件,其他什么都没做),编译后出现大量(上百个)的语法错误,
而且错误都出现在d3d10umddi.h头文件所包含的头文件中,如dxmini.h。
有没有人遇到过这种问题,求指教,谢谢了!
...全文
119
4
打赏
收藏
奇怪!!!的驱动编译问题
用WDK编译驱动的时候,我引用了WDK/inc/api里面的头文件d3d10umddi.h (只引用了这一个头文件,其他什么都没做),编译后出现大量(上百个)的语法错误, 而且错误都出现在d3d10umddi.h头文件所包含的头文件中,如dxmini.h。 有没有人遇到过这种问题,求指教,谢谢了!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zO_Oz
2012-04-26
打赏
举报
回复
如果你用的是.c的源文件,改成.cpp用C++的语法试试,虽然出错的是头文件。。。。
注意DriverEntry以及一些头文件的extern "C"。。。。。。。。
sukui888
2012-04-26
打赏
举报
回复
我也觉得是没有包含必要的其他头文件,例如我如果#include<windows.h>,错误就会减少,而且出现大量语法错误的回事d3d10umddi.h中包含的另外的头文件了。[Quote=引用 1 楼 的回复:]
贴一下具体的错误
一般是由于标点符号或者文件包含顺序及缺少相关的头文件
[/Quote]
sukui888
2012-04-26
打赏
举报
回复
你好!谢谢你的回复,我只包含了d3d10umddi.h一个头文件,没有其他源代码,错误如下:
e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(68) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(123) : error C2143: syntax error : missing ';' before '__stdcall'
missing ';' before identifier 'PhysicalAddress'
missing ';' before identifier 'HighestAcceptableAddress'
missing ';' before identifier 'CpuTranslatedAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1081) : error C2146: syntax error : missing ';' before identifier 'AgpApertureBase'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1081) : error C2146: syntax error : missing ';' before identifier 'AgpApertureBase'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1130) : error C2146: syntax error : missing ';' before identifier 'BaseAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1130) : error C2146: syntax error : missing ';' before identifier 'BaseAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1131) : error C2146: syntax error : missing ';' before identifier 'CpuTranslatedAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1131) : error C2146: syntax error : missing ';' before identifier 'CpuTranslatedAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1190) : error C2146: syntax error : missing ';' before identifier 'CPUTranslatedAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1190) : error C2146: syntax error : missing ';' before identifier 'CPUTranslatedAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1532) : error C2146: syntax error : missing ';' before identifier 'DmaBufferPhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1532) : error C2146: syntax error : missing ';' before identifier 'DmaBufferPhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1604) : error C2146: syntax error : missing ';' before identifier 'DmaBufferPhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1604) : error C2146: syntax error : missing ';' before identifier 'DmaBufferPhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1852) : error C2146: syntax error : missing ';' before identifier 'SegmentAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1852) : error C2146: syntax error : missing ';' before identifier 'SegmentAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1858) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1858) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1864) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1864) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1886) : error C2146: syntax error : missing ';' before identifier 'DummyPage'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1886) : error C2146: syntax error : missing ';' before identifier 'DummyPage'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(2111) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(2111) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(2214) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(2214) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(2261) : error C2146: syntax error : missing ';' before identifier 'SrcPhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(2261) : error C2146: syntax error : missing ';' before identifier 'SrcPhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(2577) : error C2146: syntax error : missing ';' before identifier 'PrimaryAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(2577) : error C2146: syntax error : missing ';' before identifier 'PrimaryAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(3937) : error C2143: syntax error : missing ';' before '*'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(3937) : error C2143: syntax error : missing ';' before '*'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(3937) : error C2365: 'DXGKDDI_RENDER' : redefinition; previous definition was 'function'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(3937) : error C2365: 'DXGKDDI_RENDER' : redefinition; previous definition was 'function'
1>1>e:\projects\usermode\usermode\usermode.cpp(41) : error C2679: binary '=' : no operator found which takes a right-hand operand of type 'int' (or there is no acceptable conversion)
1>1>e:\projects\usermode\usermode\usermode.cpp(41) : error C2679: binary '=' : no operator found which takes a right-hand operand of type 'int' (or there is no acceptable conversion)
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(68) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(68) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(114) : error C2146: syntax error : missing ';' before identifier 'DmaBufferPhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(114) : error C2146: syntax error : missing ';' before identifier 'DmaBufferPhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(123) : error C2143: syntax error : missing ';' before '__stdcall'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(123) : error C2143: syntax error : missing ';' before '__stdcall'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(159) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(159) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(192) : error C2146: syntax error : missing ';' before identifier 'DmaBufferPhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(192) : error C2146: syntax error : missing ';' before identifier 'DmaBufferPhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(440) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(440) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(610) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(610) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1021) : error C2146: syntax error : missing ';' before identifier 'HighestAcceptableAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1021) : error C2146: syntax error : missing ';' before identifier 'HighestAcceptableAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1066) : error C2146: syntax error : missing ';' before identifier 'BaseAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1066) : error C2146: syntax error : missing ';' before identifier 'BaseAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1068) : error C2146: syntax error : missing ';' before identifier 'CpuTranslatedAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1858) : error C2146: syntax error : missing ';' before identifier 'PhysicalAddress'
1>1>e:\winddk\7600.16385.1\inc\api\d3dkmddi.h(1858) : error C2146: syntax error :
1>1>LINK : fatal error LNK1181: cannot open input file 'e:\projects\usermode\usermode\objchk_win7_x86\i386\usermode.obj'
1>1>link : error LNK1181: cannot open input file 'e:\projects\usermode\usermode\objchk_win7_x86\i386\usermode.obj'
1>DDKBLD: =======================================================
1>DDKBLD: Build complete
1>DDKBLD: Building browse information files
1>生成日志保存在“file://e:\Projects\UserMode\UserMode\BuildLog.htm”
1>UserMode.W7 - 110 个错误,0 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
[Quote=引用 1 楼 的回复:]
贴一下具体的错误
一般是由于标点符号或者文件包含顺序及缺少相关的头文件
[/Quote]
woshi_ziyu
2012-04-26
打赏
举报
回复
贴一下具体的错误
一般是由于标点符号或者文件包含顺序及缺少相关的头文件
Linux
驱动
开发之ubuntu下的
驱动
编译
Linux
驱动
开发之ubuntu下的
驱动
编译
Linux
驱动
开发也是一直在路上,之前一直多是单板上进行实验,今天尝试下在ubuntu下
编译
一个简单的
驱动
,一些
驱动
实验自然也可以在ubuntu上进行,同时也可以减少学习成本,只需要一...
ubuntu22.10
编译
Riffa
驱动
ubuntu22.10
编译
Riffa
驱动
,版本不匹配和格式不正确
迅为4418开发板-
驱动
-以模块的方式
编译
内核
驱动
内核
驱动
不仅可以将
驱动
编译
到内核中,还可以动态的
编译
内核
驱动
。本文档介绍如何以模块的方式
编译
内核
驱动
。 要动态的
编译
内核,首先需要将内核源码
编译
通过,内核的
编译
请参考使用手册第五章。 1.4418 内核
编译
器...
linux下编写
驱动
找不到linux/module.h头文件
刚学linux下
驱动
编写,第一天照着CSDN上教程编写,发现没有
问题
,但是第二天又写了一个.c文件,
编译
时提醒找不到linux/module.h头文件 百思不得其解!!看了对比原代码没有
问题
。 最终原来是Makefile 写的出了
问题
...
Qt5.13.0用mysql8.0.17
编译
坑爹的mysql
驱动
@TOCQt5.13.0用mysql8.0.17
编译
坑爹的mysql
驱动
Qt5.13.0用mysql8.0.17
编译
坑爹的mysql
驱动
因为Qt5.13.0不自带mysql
驱动
,所以需要手动
编译
源码来获得mysql
驱动
安装Qt.5.13.0和mysql8.0 由于都是傻瓜式安装就提及...
驱动开发/核心开发
21,619
社区成员
21,710
社区内容
发帖
与我相关
我的任务
驱动开发/核心开发
硬件/嵌入开发 驱动开发/核心开发
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章