在Eclipse中,我在Windows平台上使用MinGW编译器完成了以下操作 -
C_proj.exe--->links---->libB_proj.a----->links---->libA_proj.a
其中:
现在我的需求是-- 我不想使用C exe将B和A链接起来。有没有一种方法只链接B和C,完成工作,这样我就可以向第三方提供仅包含B和C exe的文件呢?
其中:
在将A与B链接时,我只指定了libA_proj.a的路径(因为貌似不可能指定库名!)
在C中使用B时,我必须同时指定libA_proj.a和libB_proj.a。
//a.h
class a
{
public:
void printA();
};
//a.cpp
void a::printA()
{
std::cout<<"This is 'a'"<<std::endl;
}
//b.h
class b
{
public:
void printB();
void printA();
};
//b.cpp
void b::printB()
{
std::cout<<"This is 'B'"<<std::endl;
}
void b::printA()
{
std::cout<<"This is 'B'....calling A"<<std::endl;
a objA;
objA.printA();
}
//c.cpp
int main()
{
b objB;
objB.printB();
objB.printA();
return 0;
}
现在我的需求是-- 我不想使用C exe将B和A链接起来。有没有一种方法只链接B和C,完成工作,这样我就可以向第三方提供仅包含B和C exe的文件呢?
.lib
是一个DLL的thunk库。 - Mats Petersson