Re: [问题] "undefined reference to func"

楼主: leolarrel (真.粽子无双)   2016-02-17 11:53:42
※ 引述《wayne8145 (wayne)》之铭言:
: 小弟Linux kernel新手
: 一个loadable module code中的function称为A
: 另一个linux kernel的source code称为B
: 目前的问题是我需要让B呼叫A
: 在B中include A 的header档,在link time发生如题的错误讯息(compile time没错!)
:
作者: wayne8145 (wayne)   2016-02-17 12:57:00
谢谢leo大详细的解释现在compile是过了...但runtime时喷dereference null pointer问题应该是我在Module assign函数指标了,但两个是不同process,B看不到A的变量,是否要用到shared memory让B看到跟A相同的变量才行小弟资质驽钝><
楼主: leolarrel (真.粽子无双)   2016-02-17 13:27:00
不对,在kernel里面,所有的code包然事后插入的module,都处于同一个process
作者: wayne8145 (wayne)   2016-02-17 14:58:00
leo大这句【然后你的module 启动的时候把你的函式内存位置塞到这个"函式指标"变量里面】module要怎么去得到主体code的‘’函式指标变量‘’因为AB是分开编译的,所以是我哪边有误会吗@@
楼主: leolarrel (真.粽子无双)   2016-02-18 11:18:00
你C语言不同C档案虽然不同时间编译依样可以共享全域变量对吧,例如libc里面的errno变量就是经典的例子,kernel跟module一定是同样的行程,所以kernel code里extern出来的变量或函式,module一定可以存取
作者: cobrasgo (人鱼线变成鲔鱼线,超帅)   2016-02-19 18:49:00
wayne我想你很多基础观念都还没搞懂
作者: wayne8145 (wayne)   2016-02-23 01:16:00
Linux kernel确实还是新手QQ我最后有解决了,不过方法有点不太一样,还是感谢leo大

Links booklink

Contact Us: admin [ a t ] ucptt.com