<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Jan 19, 2016 at 11:18 AM, George Joseph <span dir="ltr"><<a href="mailto:george.joseph@fairview5.com" target="_blank">george.joseph@fairview5.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:'arial narrow',sans-serif"><br></div><div class="gmail_extra"><div class="gmail_quote"><span class=""><div></div></span><div><div style="font-family:'arial narrow',sans-serif">We already have a --with-pjproject=PATH option in ./configure which I'd default to the one in asterisk/third_party but you could choose any path.  The only real difference is that we're always statically linking rather than dynamically linking.  If you don't change the path, the Asterisk build would (smartly) download and build the approved version.<br></div></div></div></div></div></blockquote><div><br></div><div>Statically linking against external libraries is frowned upon almost as much as bundling.  Statically linking is harmful because:<br><br></div><div>1) It's more difficult to determine where each library is used.<br></div><div>2) An update to a library means that you have to recompile every application that uses the library, rather than just install the new version of the library and restart the services.<br></div><div>3) Potentially more memory usage because the library code pages can't be shared between processes.<br><br></div><div>The poster child for this has been zlib.  It used to be very common to statically link this library into applications, but a number of security flaws in zlib and the ensuing chaos while everyone was desperately trying to track down and replace all of the copies that had been statically linked into an application is part of what has led to distributions' policies against bundling and static linking.<br></div><div> </div>Personally, I think that a better option would be to add a tool that would sanity check the version of pjproject being linked against to make sure that all of the appropriate options are set and bail out of the Asterisk build if they aren't.<br clear="all"></div><br>-- <br><div class="gmail_signature">Jeff Ollie<br><br></div>
</div></div>