-
-
Notifications
You must be signed in to change notification settings - Fork 816
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Linux 内核模块编译错误 #define asm_inline asm __inline #2857
Comments
我这里可以 没遇到什么问题,你可以跟 make 的 cflags 自己对下,然后手动复制命令执行,排查下 flags |
还是这个问题,我发现使用xmake提供的包可以成功编译。 下面3个版本可以成功编译
下面2个版本编译失败
下面代码是从xmake-repo中提取出来的
内核编译信息 |
diff 了下 flags,出错的 flags 里面,多了一个 -Werror 而出错提示里 也跟 -Werror 有关
应该是不同 kernel 版本配置的 flags 差异导致,有的开了 |
感觉和-Werror关系不大,去掉后问题依旧,而且问题开头的错误日志中,flags里并没有-Werror。 尝试使用make编译,均通过
|
要么是 kernel 自身 headers 导致的问题,要么是这两都缺失一些 flags 或者有不正确的 flags,但是因为某些原因,只有一个版本暴露了出来
如果直接 make 可以,你可以跟 make 的 flags 做 diff 对比,如果 flags 还是完全一致,那跟 xmake 真没啥关系。。你可以自己复制 xmake -vD 里面的 command line 跟 make flags 挨个对,挨个试,很容易查出来问题,比每次贴 logs 让我猜快多了。。我这没法复现问题 |
翻了一下编译日志,发现多了几个flag
|
update your gcc |
Xmake 版本
xmake v2.7.1+202209191332
操作系统版本和架构
Linux wl-kernel 6.0.0-rc5 #1 SMP PREEMPT_DYNAMIC Sat Sep 17 14:58:17 CST 2022 x86_64 x86_64 x86_64 GNU/Linux
描述问题
使用copy_to_user函数后编译失败
是不是缺少了编译选项导致宏错误
make编译没问题
期待的结果
编译通过
工程配置
xmake.lua
main.c
附加信息和错误日志
xmake -vD
xmake f -c -vD
The text was updated successfully, but these errors were encountered: