C++ 编译错误:- 使用Makefile对"main"进行多重定义

C++ Compilation error:- multiple definition of `main' using Makefile

本文关键字:main 定义 错误 编译 Makefile 使用 C++      更新时间:2023-10-16

我有三个具有Trigger.cppTrigger.hcorchainf.cpp的文件,其中corchainf.cpp具有main()功能。现在,当我使用make命令编译这些时,我得到以下错误:-

corchainf.o: In function `main':
corchainf.cpp:(.text+0x40): multiple definition of `main'

corchainf.o:corchainf.cpp:(.text+0x40): first defined here
collect2: ld returned 1 exit status
make: *** [corchainf] Error 1

我怀疑错误在Makefile中,因为我检查了其他所有内容,所以这就是Makefile生成文件映像1makefile图像2

有人能建议makefile中的main()函数在哪里吗;被多次呼叫??

编辑:-找到了问题的解决方案。在makefile中,具有主函数的corchain.cpp被$(MAINO)和$(OBJS)调用了两次;所以删除了$(MAINO)和VOILA!!!它奏效了。感谢大家的回答。

看起来corchainf.o$(MAIN)的配方中被包含了两次。在$(OBJS)中一次,在$(MAINO)中一次。

正如评论者所提到的,请将代码粘贴到问题中。不要链接图像。