<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Arial,Helvetica,sans-serif;" dir="ltr">
<p></p>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">Hello and thanks to Silvio, z505, Giuliano.</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">> Did you try the TProcess.Environment? :-)</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">Of course but, afaik, it is not what I want.</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">I will try to explain with a concrete example (but I have much other in same case).</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">A project (uos) use c libraries.</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">Mainly all that libraries are "run-alone" (only the called library is needed).</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">But there are some libraries that have dependencies.</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;"><br>
</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">For example libopusfile.so needs libopus.so.</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">If the main program load such library with loadlibrary(/my/directory/<span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">libopusfile.so</span>) ---> it will not work, even if libopus.so is in the
 same directory that <span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
libopusfile.so.</span></span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;"><span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">And even if doing
<span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
loadlibrary(/my/directory/</span><span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">opusfile.so) before
<span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
loadlibrary(/my/directory/lib</span><span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">opusfile.so</span> </span><span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">) it will nor work because there
 are no correspondance with the 2 <span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">loadlibrary()</span></span> </span>.</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">And this is the challenge, how to load that dependeny if they are not in the lib-system directory.</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">> Another way is passing before compiling: $ LD_LIBRARY_PATH=some-path make.</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">Yes but for that the directory of dependencies must be known. In some case that dependencies come from elsewhere.</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">> launch your application from a shell script, which does the work.</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">Ok, but it is much more complicate for end-user.</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">What I need is, like for </span><span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;"><span style="font-size: 12pt;">T</span><span style="font-size: 12pt;">Process.Environment.Text</span></span><span style="font-size: 12pt;">variable,
 a e<span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 16px;">nvironment variable</span> for LoadLibrary().</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">In a previous topic :  </span><a href="http://free-pascal-general.1045716.n5.nabble.com/uses-myunit-in-src-myunit-pas-td5727626.html" class="OWAAutoLink" id="LPlnk298360" previewremoved="true"><span style="font-size: 12pt;">http://free-pascal-general.1045716.n5.nabble.com/uses-myunit-in-src-myunit-pas-td5727626.html</span></a></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-size: 12pt;">Michael answered:</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<div class="shrinkable-quote" style="overflow: hidden; font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;">
<span style="font-size: 12pt;">>> So it is exactly what I propose: </span><br>
<span style="font-size: 12pt;"> </span><br>
<span style="font-size: 12pt;">>> a TLoadLibrary with some features adapted for libraries that TProcess uses </span><br>
<span style="font-size: 12pt;">>> for executables (like environnement). </span><br>
<span style="font-size: 12pt;">>> Of course TLoadLibrary will have a LoadLibrary() and SafeLoadLibrary() but </span><br>
<span style="font-size: 12pt;">>> some properties too. </span><br>
<span style="font-size: 12pt;"> </span><br>
<span style="font-size: 12pt;">>> What do you think ?</span></div>
<br style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;">
<span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;"><span style="font-size: 12pt;">> </span><span style="font-size: 12pt;">I don't see the point at all. </span></span><br style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;">
<span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;"><span style="font-size: 12pt;">> </span><span style="font-size: 12pt;">Why would you copy functionality that the OS provides out of the box ? </span></span><br style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;">
<br style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;">
<span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 12pt;">> Michael. </span><br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;"><br>
</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;"><span style="font-size: 12pt;">Huh, what are those </span><span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 12pt;">functionality
 that the OS provides out of the box ?</span></span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;"><span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;"><br>
</span></span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 13.44px;"><span style="font-family: Verdana, Geneva, Helvetica, Arial, sans-serif; font-size: 12pt;">Fre;D</span></span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px;">
<br>
</div>
<p></p>
<div style="color: rgb(0, 0, 0);"></div>
</div>
</body>
</html>