【问题标题】:gcc compilation error /usr/bin/ld: cannot findgcc 编译错误 /usr/bin/ld: 找不到
【发布时间】:2023-01-07 11:07:29
【问题描述】:

我用C写了一个简单的程序:

int main(int argc, char *argv[])
{
    int a = 0;
    return 0;
}

当我尝试编译它 (gcc test.c) 时出现以下错误:

/usr/bin/ld: /lib/x86_64-linux-gnu/libc.so.6: type [0x13] unknown in the ".relr.dyn" section
/usr/bin/ld: /lib/x86_64-linux-gnu/libc.so.6 ignored because incompatible when searching for /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: cannot find /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libc.so.6: type [0x13] unknown in the ".relr.dyn" section
/usr/bin/ld: /lib/x86_64-linux-gnu/libc.so.6 ignored because incompatible when searching for /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib64/ld-linux-x86-64.so.2: type [0x13] unknown in the ".relr.dyn" section
/usr/bin/ld: /lib64/ld-linux-x86-64.so.2 ignored because incompatible when searching for /lib64/ld-linux-x86-64.so.2
/usr/bin/ld: cannot find /lib64/ld-linux-x86-64.so.2
/usr/bin/ld: /lib64/ld-linux-x86-64.so.2: unknown type [0x13] in the ".relr.dyn" section
/usr/bin/ld: /lib64/ld-linux-x86-64.so.2 ignored because incompatible when searching for /lib64/ld-linux-x86-64.so.2
collect2: error: ld returned 1 exit status

我在 debian 11 上。

我希望有人能帮助我。

谢谢

【问题讨论】:

  • 请向我们展示您用于构建的确切命令行。
  • @Someprogrammerdude 这是 gcc test.c
  • 好像您安装了多个编译器/链接器系统,并以某种方式将它们混合在一起。这会触发一些记忆吗?普通 Debian 上的一个简单的“gcc test.c”永远不会产生这样的错误。
  • @thebusybee 我该如何解决这个问题?
  • 最简单的方法是擦除系统并从头开始。但这只是ultima ratio。我们需要一个更多如果您希望我们修复您的系统,请提供信息。想想如果一个陌生人来告诉你这样的问题,你需要知道什么。

标签: c gcc debian ld


【解决方案1】:

我通过将 gcc-10 包从 10.3 升级到 10.4 解决了这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-17
    • 1970-01-01
    • 1970-01-01
    • 2013-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多