user18982: I want to use only *.cpp files and no *.ino anymore. I read a lot of stuff about how to upload c++ instead of arduino sketches. But still I was not able to find a step by step guide how to do it.
Actually I am developing my sketch within Spacemacs (Emacs) and uploading it with Arduino-Makefile (https://github.com/sudar/Arduino-Makefile)
When I now want to start a new project with only *.cpp and *.h files to use classes etc. how would I start? Does anybody has the time to describe a rough step-by-step without the trivial stuff?

user10794: See my post about How the IDE organizes things.
Also see my page about how to avoid the quirks of the IDE sketch file pre-preprocessing.
You can certainly manage without .ino files. As Edgar Bonet says, they are really C++ files with certain pre-processing (see link above).

but what about these loop() and setup() functions

Effectively, the Arduino IDE supplies a main function that looks like this:
int main ()
  {
  init ();    // initialize hardware, including timers and timer interrupts
  setup ();   // user setup
  while (true)
    loop ();  // stuff to be done repeatedly
  return 0;   // this will never be executed
  }

(It's slightly more complex, to allow for USB where applicable, but that is the idea).

But still I did not found the step by step guide how to do it.

I'm pretty sure there are a lot of example "make" files around which show the idea.
I have an example here.

18982: <p>I want to use only <code>*.cpp</code> files and no <code>*.ino</code> anymore. I read a lot of stuff about how to upload c++ instead of arduino sketches. But still I was not able to find a step by step guide how to do it.</p>

<p>Actually I am developing my sketch within Spacemacs (Emacs) and uploading it with Arduino-Makefile (<a href="https://github.com/sudar/Arduino-Makefile" rel="nofollow">https://github.com/sudar/Arduino-Makefile</a>)</p>

<p>When I now want to start a new project with only <code>*.cpp</code> and <code>*.h</code> files to use classes etc. how would I start? Does anybody has the time to describe a rough step-by-step without the trivial stuff?</p>
 10794: <p>See my post about <a href="https://arduino.stackexchange.com/a/13182/10794">How the IDE organizes things</a>.</p>

<p>Also see my <a href="http://www.gammon.com.au/forum/?id=12625" rel="nofollow noreferrer">page about how to avoid the quirks of the IDE sketch file pre-preprocessing</a>.</p>

<p>You can certainly manage without .ino files. As Edgar Bonet says, they are really C++ files with certain pre-processing (see link above).</p>

<blockquote>
  <p>but what about these loop() and setup() functions</p>
</blockquote>

<p>Effectively, the Arduino IDE supplies a main function that looks like this:</p>

<pre class="lang-c++ prettyprint-override"><code>int main ()
  {
  init ();    // initialize hardware, including timers and timer interrupts
  setup ();   // user setup
  while (true)
    loop ();  // stuff to be done repeatedly
  return 0;   // this will never be executed
  }
</code></pre>

<p>(It's slightly more complex, to allow for USB where applicable, but that is the idea).</p>

<blockquote>
  <p>But still I did not found the step by step guide how to do it.</p>
</blockquote>

<p>I'm pretty sure there are a lot of example "make" files around which show the idea.</p>

<p>I have an example <a href="https://arduino.stackexchange.com/a/15898/10794">here</a>.</p>
