g++ -Wall -fexceptions -g -c /home/wnw2105040105/桌面/myos/2-1/main.cpp -o obj/Debug/main.o g++ -o bin/Debug/2-1 obj/Debug/main.o /usr/bin/ld: 找不到 obj/Debug/main.o: 没有那个文件或目录 collect2: error: ld returned 1 exit status
时间: 2023-08-13 13:08:57 浏览: 82
这个错误提示是编译器找不到文件 `main.cpp` 的 object 文件 `main.o`,可能的原因有:
1. 没有成功编译 `main.cpp` 文件,导致没有生成 `main.o` 文件。
2. 编译器在找 `main.o` 文件时没有指定正确的路径,可以检查一下命令中 `-o obj/Debug/main.o` 的路径是否正确。
你可以尝试重新编译 `main.cpp`,并检查编译输出中是否有错误信息。如果重新编译仍然无法解决问题,可以检查一下路径是否正确。
相关问题
g++ -Wall -fexceptions -g -c /home/wnw2105040105/桌面/myos/2-1/main.cpp -o obj/Debug/main.o g++ -o bin/Debug/2-1 obj/Debug/main.o /bin/sh: 1: g++: not found
根据你提供的信息,这个错误提示显示在编译代码时,可能是因为你的电脑上没有安装 g++ 编译器。你可以通过以下方式来安装 g++:
1. 在终端中输入以下命令,以更新软件包列表:
```
sudo apt-get update
```
2. 安装 g++ 编译器:
```
sudo apt-get install g++
```
3. 等待安装完成后,再次编译代码即可。
如果还有其他问题,请继续提出。
4 | main() | ^~~~ /home/wnw2105040105/myos/2-1/main.cpp: In function ‘int main()’: /home/wnw2105040105/myos/2-1/main.cpp:7:18: error: ‘time’ was not declared in this scope; did you mean ‘time_t’? 7 | srand((unsigned)time(NULL)); | ^~~~ | time_t /home/wnw2105040105/myos/2-1/main.cpp:8:11: error: ‘fork’ was not declared in this scope 8 | while((x=fork())==-1); | ^~~~ /home/wnw2105040105/myos/2-1/main.cpp:11:1: error: ‘sleep’ was not declared in this scope 11 | sleep(rand() % 2); | ^~~~~ /home/wnw2105040105/myos/2-1/main.cpp:16:1: error: ‘sleep’ was not declared in this scope 16 | sleep(rand() % 3); | ^~~~~
这是一个编译错误,错误信息是 time、fork 和 sleep 函数未被声明。这可能是因为缺少相应的头文件。你可以尝试在代码中加入以下头文件:
```
#include <cstdlib>
#include <ctime>
#include <unistd.h>
```
其中,`<cstdlib>` 包含了 `srand()` 和 `rand()` 函数,`<ctime>` 包含了 `time()` 函数,而 `<unistd.h>` 包含了 `fork()` 和 `sleep()` 函数。加入这些头文件后,这些函数应该能够被正确地调用。
阅读全文