title: Rebuilding installed Ada library
body: <p>So, I've successfully built several shared libraries from Ada projects. But, when doing updates, I ran into a problem that is also experienced with some GPR managed projects. That is, if the source files are installed in the default ada search paths (which they have to be, to be meaningfully installed), the compiler tries to rebuild the installed files, notices no change, and does nothing, instead of rebuilding the local, updated, files. I know it's not just on my system, because right in the XML/Ada README, it specifically states that rebuilding if there is already a prior version of XML/Ada installed, results in not all packages being rebuilt as they should. Trying to do exactly this results in the same problem I'm experiencing with certain packages.</p>
  
  <p>For example, I have a mathematics package Mathematics. I build it as a shared library, and install it. I then have a child package Mathematics.Angles. I build this as a separate shared library, it finds Mathematics, builds fine, and links to it. Both libraries test fine. I then do some updates to Mathematics, attempt to rebuild it, and the aforementioned problem occurs: no building is deemed necessary, and the linker then finds no object files in the local directory to create a shared library from.</p>
  
  <p>Is this a deficiency in the toolchain, or an error in my part somewhere? Is there a solution/workaround? Uninstalling everything just to update a base library is not a valid workaround.</p>
  
  <p><em>edit</em>: compiled as follows:</p>
  
  <pre><code>gnatmake -O2 -gnatf -gnato $source -cargs -fPIC
  </code></pre>
  
  <p>Away from computer right now, but the gnat.adc lists roughly the following:</p>
  
  <pre><code>--naming switches, no actual changes from GNAT default though.
  pragma Enable_Assertions(Check);
  pragma License(Unrestricted);
  pragma Warnings(On);
  pragma Wide_Character_Encoding(UTF8);
  </code></pre>