0

我正在尝试使用 arm-elf-gcc 和 arm-rtems-gcc 在 vsoc_beta 上运行一些测试。但是,两个编译器都给了我同样的错误:

/home/student/vsoc-beta/apps/libgomp/root.o: In function `main':
/home/student/vsoc-beta/apps/libgomp/libgomp.c:24: multiple definition of `main'
app_obj.o:/home/student/vsoc-beta/apps/rotate/rot.c:103: first defined here
/home/student/vsoc-beta/apps/libgomp/root.o: In function `main':
root.c:(.text+0x219c): undefined reference to `_app_main'
root.c:(.text+0x2298): undefined reference to `_app_main'
make: *** [o-optimize/app.exe] Error 1

这些测试使用 libgomp,在 libgomp.c 中有一行:

extern int _app_main(int argc, char **argv, char **envp);

主要定义为:

int main(int argc, char **argv, char **envp)

在测试文件中,还有另一个主要功能:

int main(int argc, char **argv)

可能是什么问题呢?

4

1 回答 1

0

由于第一个错误是“main 的多重定义”,因此您必须首先确定您拥有的 2 个 main 函数中的哪一个是应用程序入口点。

一个应用程序仅作为一个入口点或主要功能。

于 2013-07-13T06:59:24.350 回答