同一个process里面,要用到两个 .so文件,称为A.so, B.so。
如果A.so 和 B.so各自在Make的时候都要去Link同一个.a文件,称为C.a.
我的代码造成重新生成C.a,而且我的code的处理路径只和A.so及C.a有关,所以我在重新生成C.a后,只重新Make生成了A.so,而且根据symbol table来看,A.so 和C.a的确Link在一起了。
问题出现了,当我重启process的时候,发现修改后的C.a根本不会作用于A.so, 每当debug到A调用C.a里面的函数时,程序完全还是执着地执行修改前的代码。
无奈,把整个Load重新编译了一下,替换了系统所用到的所有.so,并重启进程,代码起作用了。。。。
谁有解?