bundling a set of static libs into a framework
bundling a set of static libs into a framework
- Subject: bundling a set of static libs into a framework
- From: "Wesley Smith" <email@hidden>
- Date: Fri, 19 Dec 2008 15:04:41 -0800
Hi list,
I'm working on a framework that takes in about 15 static libs and a
few .o files and makes them into a framework + a few utility functions
in C++ code. For the most part, it's working quite well but for
whatever reason, a handful of symbols are not getting into the
framework from the static libs. I've observed that if I add a "hack"
function that makes explicit use of these symbols in one of the
framework's source files that they will somehow get into the
framework.
For example:
nm libclangDriver.a | grep DiagnosticPrinter
libclangDriver.a(TextDiagnosticPrinter.o):
000000d4 T __ZN5clang21TextDiagnosticPrinter14HighlightRangeERKNS_11SourceRangeERNS_13SourceManagerEjjRSsRKSs
000003f8 T __ZN5clang21TextDiagnosticPrinter16HandleDiagnosticERNS_10DiagnosticENS1_5LevelENS_13FullSourceLocENS_4diag4kindEPKSsjPKNS_11SourceRangeEj
00000000 T __ZN5clang21TextDiagnosticPrinter17PrintIncludeStackENS_13FullSourceLocE
0001fe82 S __ZN5clang21TextDiagnosticPrinterD0Ev
0001fe6e S __ZN5clang21TextDiagnosticPrinterD1Ev
0001fe2e S __ZN5clang21TextDiagnosticPrinterD2Ev
0001f590 S __ZTVN5clang21TextDiagnosticPrinterE
0001ffd7 s __ZZN5clang21TextDiagnosticPrinter14HighlightRangeERKNS_11SourceRangeERNS_13SourceManagerEjjRSsRKSsE8__func__
000200ba s __ZZN5clang21TextDiagnosticPrinter16HandleDiagnosticERNS_10DiagnosticENS1_5LevelENS_13FullSourceLocENS_4diag4kindEPKSsjPKNS_11SourceRangeEjE8__func__
None of these symbols get exported from my framework unless I add a
function like
void hack() {
TextDiagnosticPrinter *textPrinter = new TextDiagnosticPrinter();
}
I'm wondering how I can force the symbols to be exported from my
framework without having to do this.
thanks,
wes
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden