A 动态库 依赖于 B动态库,
B动态库如果修改了,什么情况下要编译A动态库?什么情况下不要,谢各位指点

解决方案 »

  1.   

    1)修改了DLL导出函数的内部实现或内部函数,A不需要重新编译
    2)修改了DLL导出函数参数,导出顺序,A需要重新编译
      

  2.   

    1.B动态库输出函数顺序变化时A动态库是否要重新编译,取决于A是怎样调用B函数的,若按函数名调用,不需编译B,若按函数序号调用B中的函数,需要重新编译A,且要调整序号一致。2.B动态库新增了接口,若原先的输出函数顺序未变化,A不需要编译,否则参考1.
      

  3.   

    要,应该是和导出的序号有关,可以参考msdn,搜索“使用 DEF 文件从 DLL 导出”
    要。
      

  4.   

    不知道这些规则对unix下的so库是否一样限制?有知道的吗