我用A.LIB生成了自己的 B.LIB
在另外一个程序里 #pragma comment(lib,"B.lib") 还是A.LIB都必须引用的。我认为只要引用B.LIB就行了,但是我编译提示缺少A.LIB为什么?

解决方案 »

  1.   

    编译提示缺少A.LIB,那应该是工程中或代码中(比如和a.lib相关的头文件中)有地方设置连接这个lib了。
      

  2.   

    工程->设置->连接->对象/库模块输入a.lib
      

  3.   


    理论上 是不是 就不用#pragma comment(lib,"A.lib")?
      

  4.   


    是啊,你要是在这个工程中没有直接用到A.lib中定义的导出函数,就不要引用A.lib。即使工程B用到A.lib了,本工程又引用了B.lib,也不用引用A.lib。
      

  5.   

    不用comment A.lib。但是主程序在调用B.lib的时候,B.lib所依赖的A.lib没有配置好,也就是说这个错误是B和A之间的事,不是主程序和B之间的事。如果楼主在主程序中直接调用了A.lib,那就是另外一回事了。
      

  6.   

    在B.LIB的工程里面包含A.LIB。就像源文件和头文件那样导入到工程,编译的时候就会把A.LIB打包到B.LIB了。这样就使用B.LIB的时候就可以不需要再连接A.LIB了~~