gpt4 book ai didi

debugging - 使用clion调试rust时,如何解决奇怪的非ascii字符动态链接器错误?

转载 作者:行者123 更新时间:2023-12-03 11:48:38 24 4
gpt4 key购买 nike

我现在遇到了这个问题,这个问题是从几周前开始的,但是由于它又回来了,因此没有明确的原因消失了。

我一直在运行 rust 稳定工具链1.40.0版。
我的一位同事进行了代码更改,其中包含1.43.1中的功能,因此我必须升级。
一旦完成并重新构建了所有内容,尝试在clion中进行调试时就开始出现此错误:

/home/smark/git/target/debug/client: relocation error: /home/smark/git/target/debug/client: symbol $�H� version OPENSSL_1_1_0 not defined in file libcrypto.so.1.1 with link time reference

我在工具链版本1.43.1中看到一个引用,内容为:“OpenSSL已更新为1.1.1g”
所以我想可能是这样。
我降级为1.40.0,调试器开始工作。
我的同事说我不能在其他所有人的支持下运行版本,因此我又进行了升级。
同样在这个时候,clion的rust插件得到了升级,这一次我尝试对其进行调试时,开始在clion中进行调试时没有出现错误。
因此,我认为这是clion插件中的一个错误,该错误是由rust工具链更新引起的。

一切都很好,直到今天,它又开始发生了。

同样的错误,我没有更新任何工具链或clion rust插件。

但除此之外,在尝试调试其他二进制文件时,我也会收到此错误消息:
/home/smark/git/target/debug/testreadcache: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_�.3.2' not found (required by /home/smark/git/target/debug/testreadcache)
/home/smark/git/target/debug/testreadcache: /lib/x86_64-linux-gnu/libgcc_s.so.1: version `GCC_�.2.0' not found (required by /home/smark/git/target/debug/testreadcache)
/home/smark/git/target/debug/testreadcache: /lib/x86_64-linux-gnu/libpthread.so.0: version `GLIBC_�.3.2' not found (required by /home/smark/git/target/debug/testreadcache)

这些.so文件存在于指定的位置,但是我认为有关版本号错误导致它失败。

无论如何,我依靠调试器来完成我的工作,而且我不知道从哪里开始尝试尝试解决此问题。我清理并重新构建,重新启动,重新启动ide,我不知道还有什么尝试。

该程序将在命令行中运行,它将在命令行中的gdb中运行,只是不能使用clion。

有什么建议?有人看过吗?

最佳答案

因此,如果在此之前我不是一个真正的讨厌 rust 的人,那我现在就是了。 :-)
我想我终于想通了,我无法想象我是唯一遇到此问题的人,所以如果有人这样做,也许这会有所帮助...请加入我的行列,努力使软件变得更好而不容忍完全损坏的软件,例如现有的防 rust 工具...
我将其添加到项目根目录的Cargo.toml中(仅在此处起作用,不是特定于项目的)

# avoid any optimization
[profile.dev]
incremental = false
codegen-units = 1
lto = "off"
您可能会认为调试无法优化,但显然可以优化,并且在某些情况下,Linux上会物理上破坏二进制文件。我猜这是lto,而且我确定这是llvm的问题,并且不是使用rust 的问题,但是同样,如果我是木匠,我不在乎为什么我的锤子坏了,或者谁设计或制造的锤子不好,我只是希望我的锤子能够工作,这样我就可以完成工作,而不必花费无休止的时间来使我的锤子工作。
希望它能帮助到别人。
还要预先感谢您所做的一切,认为有必要编辑这篇文章,以免生气。至少请不要删除答案的有用部分,这样也许其他人就不必像我一样受苦了。

关于debugging - 使用clion调试rust时,如何解决奇怪的非ascii字符动态链接器错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62044153/

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