捆绑 dylib,headerpad_max_install_names 不起作用

问题描述 投票:0回答:1

在 OSX 上,我想在最终应用程序中捆绑几个 dylib,应用程序和其他 dylib 都需要它们。

我使用 install_name_tool 更改其引用,但某些库无法正确更改,出现此错误:

install_name_tool: changing install names
or rpaths can't be redone for:
aLibrary.dylib (for architecture x86_64)
because larger updated load commands do not fit
(the program must be relinked, and you may need to use
-headerpad or -headerpad_max_install_names)

因此,我在 xcode 项目的链接器标志上添加了

-headerpad_max_install_names
标志(项目属性>构建设置>链接>其他链接器标志)。我还在构建日志中验证了是否包含选项标志,并且选项标志是否正确包含。

但是在最后一个dylibs中仍然有同样的错误。

有没有办法将所有需要的库捆绑在一个独特的框架中?还是我在构建过程中做错了什么?

macos linker-errors dylib install-name-tool
1个回答
0
投票

我也遇到了同样的问题,使用 C++ 和 Code::Blocks,我通过从 g++ 切换到 clang++ 来修复它

© www.soinside.com 2019 - 2024. All rights reserved.