链接器 `cc` 未找到。

24
在Ubuntu上首次安装Rust后,请尝试运行此程序。

运行此程序的方法如下:

fn main() {
    println!("Hello, world!");
}

错误:

$ cargo run
   Compiling test1 v0.1.0 (/home/saad/Documents/Rust/test1)
error: linker `cc` not found
  |
  = note: No such file or directory (os error 2)

error: aborting due to previous error

error: could not compile `test1`.

1
你是如何安装 Rust 的?如果你使用 rustup 安装的话,不要忘记安装 build-essential# apt install build-essential - Boiethios
"sudo apt-get install update""sudo apt-get install curl" 我使用这些命令,然后使用此命令 "curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh" 安装开始。 - M Saad Sajid
好的,就像我说的那样,你必须安装 build-essential 软件包。 - Boiethios
2
这个回答解决了你的问题吗?如何在Windows 10上为Debian修复Rust错误“找不到链接器'cc'”? - Boiethios
3个回答

27

如消息中所提到的,链接器'cc'已丢失。 您可以使用apt-get进行安装:

As mentioned in the message, the linker 'cc' is missing. You can install it using apt-get:

sudo apt-get install gcc
完成安装后,问题应该得到解决。

请按照此问题上的被接受的答案进行WSL安装。 - Leela Venkatesh K
如果你在Windows机器上遇到这个问题(而不是WSL),那该怎么办呢?我在GitHub Actions上看到了这个问题。肯定有一种方法可以进行交叉编译,对吧? - Andrew Arnott

8

您的系统缺少C语言链接器,Rustup假设您已经安装了它。您可以通过以下命令安装(以及其他可能有用的工具,如make):

sudo apt install build-essential


@FrenchBoiethios 这是非常正确的。抱歉,我不太熟悉这类情况在Stackexchange上通常是如何处理的。如果有一个链接的重复问题(这个问题似乎不再被标记为任何问题了),不回答这个问题会更好吗? - Newbyte

2

这个错误主要发生在 Linux 或 WSL 上。 您可以通过运行以下命令来解决它:

sudo apt install build-essential

如果问题仍然存在,请按照以下方式安装gcc
sudo apt-get install gcc

如果gcc出现错误,请继续执行以下命令(这只是可选的)。
apt-get update --fix-missing

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接