title: Make ignore errors: what is the difference between -i and -k
body: <p>I want <code>make</code> to continue even if a dependency's build fails. I usually use <code>-i</code> to accomplish this. A colleague of mine said he uses <code>-k</code>. Indeed, this stack overflow question has an answer for each:</p>
  
  <p><a href="https://stackoverflow.com/questions/2670130/make-how-to-continue-after-a-command-fails">Make: how to continue after a command fails?</a></p>
  
  <p>Is there a difference between these two options?</p>
  
  <p>Here's what the <code>make</code> man page says for these two options:</p>
  
  <pre><code>   -i, --ignore-errors
          Ignore all errors in commands executed to remake files.
  
     -k, --keep-going
          Continue as much as possible after an error.  While the 
          target that failed, and those that depend on it, cannot be 
          remade, the  other  dependencies of these targets can be 
          processed all the same.
  </code></pre>
  
  <p>What <code>-k</code> describes is what I think <code>-i</code> does. I'm sure I'm missing something: can someone help me understand the difference?</p>