<div dir="ltr">On Sat, Nov 2, 2013 at 12:19 PM, Marcos Douglas <span dir="ltr"><<a href="mailto:md@delfire.net" target="_blank">md@delfire.net</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">
> compiling with<br>
> fpc -ALIAS /lib/* TheLib<br>
><br>
> won't help, unless you change "ExtraUtils.pas" to use TheLib.StrUtils<br>
<br>
</div>Well, is more common to use just ppu files to not compile these files<br>
every compilation. So, the Lib was already compiled using your own<br>
files, all in the same directory or tree.<br></blockquote><div>The linker has to choose only 1 object file and the wrong file will be taken from the program folder. </div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">> My proposal looks like this:<br>
> -SEARCH<br>
><br>
> fpc -SEARCH/program/unit1.pas@/lib/<br>
><br>
> Causing fpc to look for units at "Libs" first when compiling<br>
> "/program/unit1.pas"<br>
> No changes in any source code necessary.<br>
> With the swicth present<br>
> ---code---<br>
> unit unit1<br>
><br>
> uses StrUtils; // strutils from lib<br>
> ===code===<br>
><br>
> thanks,<br>
> Dmitry<br>
<br>
</div>This works only if you don't want use StrUtils of your project and,<br>
IMHO, this is more complex solution. You will need to tell the<br>
compiler which unit of your project that compiles using an unit in<br>
another place that uses the same unit name you already uses in your<br>
project</blockquote><div>Wrong. The search exception is created for a certain file or files under a certain directory</div><div>In example above, only /program/unit1.pas would be using StrUtils from "lib" any other file would be using StrUtils from "program". </div>
<div> </div><div>thanks,</div><div>Dmitry</div></div></div></div>