gpt4 book ai didi

c++ - 关于创建 StaticLib 的格式错误的存档目录条目

转载 作者:太空狗 更新时间:2023-10-29 23:08:55 25 4
gpt4 key购买 nike

我目前正在开发一个项目,该项目创建一个静态库和三个链接到该库的可执行文件。在干净的构建中,当我尝试在 OSX 10.7.1 上创建库时,它将正确构建。但是,如果它不是一个干净的构建,那么我会收到此错误。

ld: in ./libframework.a, malformed archive TOC entry for GameApp::~GameApp(), offset 222233108   is beyond end of file 3056 for architecture x86_64

如果我在收到此错误后进行干净的构建,那么在不更改任何build设置的情况下,它将毫无问题地编译。链接错误似乎并不总是适用于同一个条目。如果我注释掉 descstructor,那么它将只引用另一个条目。

有什么想法吗?

最佳答案

这里的错误是重新编译时需要更新静态库的目录。要解决此问题,可以将 -s 标志添加到 ar,或者可以在编译库之后但链接之前执行 ranlib。

关于c++ - 关于创建 StaticLib 的格式错误的存档目录条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7500901/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com