11

I was trying to compile a program with cmake, and I ended up deleting my main.cpp file, which I had just compounded into another file which held the name of my project (i.e., I just cut and pasted the main function into that one). The problem is that I got a main.cpp not found error, and wasn't sure whether or not in C++ a file known as main.cpp is required, or can I have a file with a different title which contains the function main instead?

Edit I should note that I have removed any specification to main and have recompiled this program.

zeboidlund
  • 9,731
  • 31
  • 118
  • 180

4 Answers4

13

No, you don't need a file named main.cpp. You don't need a file containing main() unless you are building an application. That is, if you were just building a library of functions or a standalone object file you would not require main().

Mahesh
  • 34,573
  • 20
  • 89
  • 115
Duck
  • 26,924
  • 5
  • 64
  • 92
4

Name of the source file has nothing to do for a program successful build. All you need a source file that has main function. How ever, naming the file as main.cpp is just a programming practice to just easily locate where the main function is.

Mahesh
  • 34,573
  • 20
  • 89
  • 115
1

No the main method doesn't have to be in a file called main.cpp.

talnicolas
  • 13,885
  • 7
  • 36
  • 56
0

You can use any file name you want, you just need to update it in the makefile

Daniel
  • 30,896
  • 18
  • 85
  • 139