title: Difference between SRC_URI and FILESEXTRAPATHS_prepend in bitbake
body: <p>Why do we need to give path of files in <code>SRC_URI</code> even though we are including the files path in <code>FILESEXTRAPATHS_prepend</code> variable? For example:</p>
  <pre><code>SUMMARY = &quot;Simple Hello application&quot;
  LICENSE = &quot;MIT&quot;
  LIC_FILES_CHKSUM = &quot;file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302&quot;
  
  FILESEXTRAPATHS_prepend := &quot;${THISDIR}/files:&quot;
  
  SRC_URI = &quot;file://Hello_1.c \
             file://Hello_2.c \
                &quot;
  
  do_compile() {
           oe_runmake
  }
  
  do_install() {
           install -d ${D}${bindir}
           install -m 0755 Hello ${D}${bindir}
  }
  </code></pre>
  <p>In the &quot;files&quot; folder I have two files: <code>hello1.c</code> and <code>hello2.c</code>. When I remove <code>SRC_URI</code> it outputs the following error,</p>
  <pre><code>ERROR: Hello-1.0-r0 do_compile: oe_runmake failed
  </code></pre>
  <p>But if I remove
  <code>FILESEXTRAPATHS_prepend</code> it is working fine.</p>
  <p>What is the purpose of the variable <code>FILESEXTRAPATHS_prepend</code>?</p>
  <p>Why error occurs when I remove <code>SRC_URI</code> even though I'm including my files path in <code>FILESEXTRAPATHS_prepend</code>?</p>