【问题标题】:How to link with libbfd on MacOS?如何在 MacOS 上与 libbfd 链接?
【发布时间】:2022-01-01 17:18:28
【问题描述】:

我正在尝试在 MacOS 上使用 libbfd 构建。我没有发现任何表明 Apple Clang 会提供类似功能的东西,所以我“卡”在 Homebrew 上。

/usr/local/opt/binutils/lib/libbfd.a 链接我得到很多未解决的符号,一些侦探工作表明至少有一些来自libiberty 所以感谢https://stackoverflow.com/a/65978315/204658 我解决了大部分问题,但我还有一些也是有点混乱:

Undefined symbols for architecture x86_64:
  "_compress", referenced from:
      _bfd_compress_section_contents in libbfd.a(compress.o)
     (maybe you meant: __bfd_pex64_print_ce_compressed_pdata, __bfd_pep_print_ce_compressed_pdata , _bfd_init_section_compress_status , _bfd_is_section_compressed , _bfd_is_section_compressed_with_header , __bfd_pe_print_ce_compressed_pdata , _bfd_compress_section , _bfd_get_compression_header_size , _bfd_update_compression_header , _bfd_check_compression_header )
  "_compressBound", referenced from:
      _bfd_compress_section_contents in libbfd.a(compress.o)
  "_inflate", referenced from:
      _decompress_contents in libbfd.a(compress.o)
  "_inflateEnd", referenced from:
      _decompress_contents in libbfd.a(compress.o)
  "_inflateInit_", referenced from:
      _decompress_contents in libbfd.a(compress.o)
  "_inflateReset", referenced from:
      _decompress_contents in libbfd.a(compress.o)

【问题讨论】:

    标签: homebrew bfd


    【解决方案1】:

    这些符号来自libz 库。

    在许多平台上,您不需要显式链接 libz,但在 Homebrew 上您需要。

    您需要使用-libz 链接。

    【讨论】:

      猜你喜欢
      • 2015-06-10
      • 2021-06-10
      • 2019-03-03
      • 2021-05-30
      • 2021-03-09
      • 2021-06-08
      • 2021-03-29
      • 1970-01-01
      • 2021-12-03
      相关资源
      最近更新 更多