在eclipse中,我使用MinGW編譯器在windows平臺下完成 - C_proj.exe ---> links ----> libB_proj.a ----->鏈接----> libA_proj.a鏈接靜態lib與另一個靜態庫,並使用一個exe文件中的主庫lib
當連接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文件?
確實有辦法,但我不知道如何使用你的工具來做。 [這是你如何在Visual Studio中完成的工作](http://i.imgur.com/X2hE2Bu.jpg) – typ1232
@ typ1232:我認爲'.lib'是一個.dll的thunk-library –
http://stackoverflow.com/questions/12198261/include-static-library-in-static-library – Derek