编译EFI驱动 提示入口函数冲突

[复制链接]
Figure 发表于 2019-2-28 16:58:41 | 显示全部楼层 |阅读模式
我在Ubuntu 16.04下用GCC5  编译一个uefi 驱动 在编译含有 inf入口函数的 a.c 时(入口函数名为 aaa) 提示 error: conflicting types for ‘aaa’ In file included from <command-line>:0:0:
.../DEBUG/AutoGen.h:89:1: note: previous declaration of ‘aaa’ was here

GNUmakefile:932: recipe for target '/home/linux/Downloads/edk2/Build/.../OUTPUT/a.obj' failed

当我将 inf入口函数名更换成ggg时候 提示/home/linux/Downloads/edk2/.../b.c:1045:对‘ggg’未定义的引用

请问这是为什么呢



上一篇:技术员 Ghost Win 7 Sp1(x86/x64)旗舰贺岁版 201902
下一篇:2019年3月1日签到记录贴
 楼主| Figure 发表于 2019-3-1 19:37:35 | 显示全部楼层
这个问题已经解决,是头文件依赖出了点问题
现在有个新的问题,我变异的UEFI驱动 是 GCC fastcall 调用约定 (edi esi rdx rcx r8 r9传参) 而edk2是 MS fastcall调用约定(rcx rdx r8 r9传参) 请问这是为什么呢
还请大牛指教一下,万分感谢
回复

使用道具 举报

 楼主| Figure 发表于 2019-3-5 11:26:46 | 显示全部楼层
问题已解决
回复

使用道具 举报

本版积分规则

QQ|Archiver|手机版|小黑屋|RD之家 - 研发工程师的伊甸园 ( 京ICP备18037383号 )
360导航 360安全浏览器 蚂蚁搜索 速搜全球 酷帝网站目录 搜狗导航 114啦网址导航

GMT+8, 2019-3-19 15:44

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表