Hi All
I am facing a problem in Linking one static DLL with another static DLL.
I explain in detail as it is little bit complex
I prepared one (First) static DLL which has one class. Whose sole purpose is to provide the pointer of several different classes.
I Explain with the Example
Let there is 3 Classes A, B, C having certain different functionality.
Now is First Static DLL has a Cpp File name First.cpp which contain one class whose objective is to create the object of the class A, B and C and return the pointer to the object to the outside world who uses the First static DLL.
Now in second static dll, functionality’s of the classes of First dll are to used through the available pointer to those classes.
While preparing the second static DLL, I include the lib file of the first static dll and the header files of the classes A, B and C.
And now when we make the second static dll, then we get the linking error Unresolved symbol ClassName::Function1Name(void)
For Example Like
Unresolved symbol B::Func1(void)
We analyzed these errors and reach to the conclusion that this linking error comes with those functions which play with the memory. No Linking Error comes with the GETTER type functions of class A,B and C.
Above Linking Problem was resolved when we add the classname.o (B.o) file to the second static dll.
Adding the Object Code File to the second static DLL directly hopefully is not the right solution
Can you tell me where i go wrong ?
Regards
Shishir

Reply With Quote

