在 Eclipse 中,我在 Windows 平台上使用 MinGW 编译器完成了以下操作 - C_proj.exe--->links---->libB_proj.a----->links---->libA_proj.a
将 A 与 BI 链接时,仅指定 libA_proj.a 的路径(不是 lib 名称,因为这似乎不可能!)
在 CI 中使用 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;
}
现在我的要求是—— 我不想将 B 和 A 都与 C exe 链接起来。有没有办法仅将 B 与 C 链接并完成工作,以便我只能将 B 和 C exe 提供给第三方?