C++ 编译错误:- 使用Makefile对"main"进行多重定义
C++ Compilation error:- multiple definition of `main' using Makefile
我有三个具有Trigger.cpp
、Trigger.h
和corchainf.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)
中一次。
正如评论者所提到的,请将代码粘贴到问题中。不要链接图像。
相关文章:
- QML:修改在不同QML文件(而非main.QML)中定义的子对象的属性
- File.cpp.o:OpenPose 标志 CMakeFiles/.. 的多重定义/main.cpp.o:首先在这里定
- C++:main() 未捕获的异常的自定义格式
- C++/生成文件错误:未定义对"main"的引用
- 在命名空间中声明变量,在 main 中定义它,使其对所有其他文件可见
- 可视化 如何修复 c++ 中已经定义的 -main?
- 在 Linux 上编译 - 在函数 '_start' 中:(.text+0x20):对 'main' 的未定义引用
- C++错误:在类中取消对main的定义引用
- crt1.o:在函数"_start"中:(.text+0x20):对"main"的未定义引用
- Main.Obj中已经定义的主要
- main.cpp:(.text+0x8ea):在C++中未定义的引用
- 实用程序函数不会在 .h 文件中初始化并在 main 中定义.cpp
- C :使用Main中定义的对象方法的函数
- 已在main.obj中定义了双精度
- C++ 编译错误:- 使用Makefile对"main"进行多重定义
- 如何将包含多个.cpp源文件的文件夹导入Eclipse项目中,每个源文件都有一个main()定义
- main.cpp:(.text+0x8f):对[对象方法]的未定义引用
- C++编译错误:多个定义"main",但项目中只有一个 main 函数
- 在 main() 中定义全局变量
- 为什么这个将main定义为函数指针的程序会失败?