10

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,255
  • 29
  • 114
  • 177

4 Answers4

12

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
  • 33,625
  • 17
  • 84
  • 113
Duck
  • 25,966
  • 4
  • 61
  • 89
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
  • 33,625
  • 17
  • 84
  • 113
1

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

talnicolas
  • 13,437
  • 7
  • 35
  • 55
0

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

Daniel
  • 29,121
  • 15
  • 79
  • 134