笔者的环境为Debian10系统、内核5.12.14版本、机器surface pro5,一开始安装xDroid失败(卡在内核模块编译),究其原因为新版内核默认不再导出kallsyms_lookup_name函数,于是修改内核源码、重新编译并安装内核,然后即可顺利安装运行xDroid,故撰此文以分享经验给大家。如果有朋友也是因为内核模块不能正常编译而安装失败,不妨试一试这种方法。
文件:内核源码目录/kernel/kallsyms.c
修改:在unsigned long kallsyms_lookup_name(const char *name)函数结束后新增一行【EXPORT_SYMBOL_GPL(kallsyms_lookup_name);】,不包含最外层括号【】
然后正常编译并安装内核,启动新内核,即可正常安装使用xDroid。
以下为该方法出处(GitHub):
注:此人提到5.7以上内核才需要这样做