在delphi tokyo下,当我在这样的Ios项目中链接静态库(* .a)时:
procedure StubProc1; cdecl; external 'FBSDKCoreKit.a' name 'OBJC_CLASS_$_FBSDKAccessToken';
我收到很多像这样的警告:
ld:警告:未知的矮人DW_FORM_strp(偏移= 0xFFFF6E38)也是 大的 C:\开发\ lib中\ IOS \实\ FBSDKShareKit.framework \ FBSDKShareKit.a(FBSDKAppInviteContent.o)
知道出了什么问题吗? unknown dwarf DW_FORM_strp
究竟是什么意思?
答案 0 :(得分:0)
参考代码:
https://opensource.apple.com/source/cxxfilt/cxxfilt-9/cxxfilt/binutils/dwarf.c.auto.html
/* Process the contents of a .debug_info section. If do_loc is non-zero
then we are scanning for location lists and we do not want to display
anything to the user. */
static int
process_debug_info (struct dwarf_section *section, void *file,
int do_loc)
然后它调用read_and_display_attr
- > read_and_display_attr_value
- > fetch_indirect_string
:
offset -= section->address;
if (offset > section->size)
{
warn (_("DW_FORM_strp offset too big: %lx\n"), offset);
return _("<offset is too big>");
}
因此,似乎此警告仅用于调试目的。
也许你的第三方库缺少调试信息,或者与调试不兼容的东西(记住,即使你正在构建发布版,你的应用程序中仍然可以有一些调试信息)。
由于仅用于调试,一旦您成功编译了项目,此警告就无关紧要了。