Because the modules all use the core API functions, which are provided by libfreeswitch.so.<br><br>I&#39;ve just checked and the .so is used by both the freeswitch binary and all the modules. That means although all modules depend on the library, it&#39;s only loaded into memory once so you&#39;re not wasting memory. If it was compiled statically it&#39;d mean huge module files.<br>

<br>The .la is just used then to generate the .so. As a sideeffect the .la is also distributed into the mod directory (as .la and .a) so you can link statically if you&#39;re embedding FS in your own app if you wish, but I don&#39;t think they&#39;re actually used.<br>

<br>-Steve<br><br><br><br><br><div class="gmail_quote">On 17 June 2011 01:10, jesse <span dir="ltr">&lt;<a href="mailto:chat2jesse@gmail.com">chat2jesse@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

If you look at mod_console.so make log,  why it depends on libfreeswitch.so?<div><br></div><div><div>Creating mod_console.so...</div><div>.... -fPIC ....  -D_GNU_SOURCE -shared -o .libs/mod_console.so -shared -Wl,-x .libs/mod_console.o  -lm -L/home/xyz/work/freeswitch-1.0.6/lib /home/xyz/work/freeswitch-1.0.6/.libs/libfreeswitch.so -L/home/xyz/work/freeswitch-1.0.6/libs/apr-util/xml/expat/lib</div>


</div><div><div></div><div class="h5"><div><br><br><div class="gmail_quote">On Thu, Jun 16, 2011 at 12:47 PM, Steven Ayre <span dir="ltr">&lt;<a href="mailto:steveayre@gmail.com" target="_blank">steveayre@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I think it&#39;s because it compiles libfreeswitch as a .la so that it can be build into the freeswitch binary. libfreeswitch.so is also distributed (and built from the .la) so that you can embed freeswitch within your own program.<br>




<br>I&#39;m sure one of the main devs could confirm that...<br><br>-Steve<div><div></div><div><br><br><br><br><br><div class="gmail_quote">On 16 June 2011 20:38, jesse <span dir="ltr">&lt;<a href="mailto:chat2jesse@gmail.com" target="_blank">chat2jesse@gmail.com</a>&gt;</span> wrote:<br>




<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p>Ok, I know the difference between .so and .a/.la, my question is why freeswitch makefile needs to create both libfreeswitch.so and <a href="http://libfreewitch.la" target="_blank">libfreewitch.la</a>? You either dynamic link or static link. I am confused here. ..</p>




<div><div></div><div>

<div class="gmail_quote">On Jun 16, 2011 12:27 PM, &quot;Steven Ayre&quot; &lt;<a href="mailto:steveayre@gmail.com" target="_blank">steveayre@gmail.com</a>&gt; wrote:<br type="attribution">&gt; They&#39;re built in. They&#39;re not separate modules, there&#39;s no need to load<br>





&gt; them.<br>&gt; <br>&gt; The .so is a shared library.<br>&gt; The .la is a static library created by libtool. It&#39;s like a .a file if you<br>&gt; weren&#39;t using libtool.<br>&gt; <br>&gt; -Steve<br>&gt; <br>&gt; <br>





&gt; On 16 June 2011 20:02, jesse &lt;<a href="mailto:chat2jesse@gmail.com" target="_blank">chat2jesse@gmail.com</a>&gt; wrote:<br>&gt; <br>&gt;&gt; in the core?  I guess it is included in libfreeswitch.so.<br>&gt;&gt;<br>




&gt;&gt; based on the makefile output the libfreeswitch has two forms :<br>
&gt;&gt; <a href="http://libfreeswitch.la" target="_blank">libfreeswitch.la</a> and libfreeswitch.so, what is the reason ? It creates  a<br>&gt;&gt; big headache for our cross compiling..<br>&gt;&gt;<br>&gt;&gt; -jesse<br>




&gt;&gt;<br>&gt;&gt;<br>
&gt;&gt; On Thu, Jun 16, 2011 at 11:31 AM, Anthony Minessale &lt;<br>&gt;&gt; <a href="mailto:anthony.minessale@gmail.com" target="_blank">anthony.minessale@gmail.com</a>&gt; wrote:<br>&gt;&gt;<br>&gt;&gt;&gt; in the core =D<br>




&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>&gt;&gt;&gt; On Thu, Jun 16, 2011 at 1:17 PM, jesse &lt;<a href="mailto:chat2jesse@gmail.com" target="_blank">chat2jesse@gmail.com</a>&gt; wrote:<br>&gt;&gt;&gt; &gt; I am doing cross compiling of freeswitch.<br>




&gt;&gt;&gt; &gt; 2011-06-16 11:12:46.912825 [WARNING] switch_loadable_module.c:948 Module<br>
&gt;&gt;&gt; &gt; path /CORE_SOFTTIMER_MODULE.so and file CORE_SOFTTIMER_MODULE to be<br>&gt;&gt;&gt; loaded<br>&gt;&gt;&gt; &gt; ...!<br>&gt;&gt;&gt; &gt; 2011-06-16 11:12:46.912890 [CRIT] switch_loadable_module.c:882 Error<br>





&gt;&gt;&gt; Loading<br>&gt;&gt;&gt; &gt; module /CORE_SOFTTIMER_MODULE.so<br>&gt;&gt;&gt; &gt; **/CORE_SOFTTIMER_MODULE.so: cannot open shared object file: No such<br>&gt;&gt;&gt; file or<br>&gt;&gt;&gt; &gt; directory**<br>





&gt;&gt;&gt; &gt; 2011-06-16 11:12:46.912905 [WARNING] switch_loadable_module.c:948 Module<br>&gt;&gt;&gt; &gt; path /CORE_PCM_MODULE.so and file CORE_PCM_MODULE to be loaded ...!<br>&gt;&gt;&gt; &gt; 2011-06-16 11:12:46.912941 [CRIT] switch_loadable_module.c:882 Error<br>





&gt;&gt;&gt; Loading<br>&gt;&gt;&gt; &gt; module /CORE_PCM_MODULE.so<br>&gt;&gt;&gt; &gt; **/CORE_PCM_MODULE.so: cannot open shared object file: No such file or<br>&gt;&gt;&gt; &gt; directory**<br>&gt;&gt;&gt; &gt;<br>&gt;&gt;&gt; &gt; I can&#39;t find them under /usr/local/freeswitch. where are they?<br>





&gt;&gt;&gt; &gt; -jesse<br>&gt;&gt;&gt; &gt; _______________________________________________<br>&gt;&gt;&gt; &gt; FreeSWITCH-dev mailing list<br>&gt;&gt;&gt; &gt; <a href="mailto:FreeSWITCH-dev@lists.freeswitch.org" target="_blank">FreeSWITCH-dev@lists.freeswitch.org</a><br>





&gt;&gt;&gt; &gt; <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev</a><br>&gt;&gt;&gt; &gt; UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-dev</a><br>





&gt;&gt;&gt; &gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>&gt;&gt;&gt; &gt;<br>&gt;&gt;&gt; &gt;<br>&gt;&gt;&gt;<br>&gt;&gt;&gt;<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; --<br>&gt;&gt;&gt; Anthony Minessale II<br>





&gt;&gt;&gt;<br>&gt;&gt;&gt; FreeSWITCH <a href="http://www.freeswitch.org/" target="_blank">http://www.freeswitch.org/</a><br>&gt;&gt;&gt; ClueCon <a href="http://www.cluecon.com/" target="_blank">http://www.cluecon.com/</a><br>




&gt;&gt;&gt; Twitter: <a href="http://twitter.com/FreeSWITCH_wire" target="_blank">http://twitter.com/FreeSWITCH_wire</a><br>
&gt;&gt;&gt;<br>&gt;&gt;&gt; AIM: anthm<br>&gt;&gt;&gt; <a href="mailto:MSN%3Aanthony_minessale@hotmail.com" target="_blank">MSN:anthony_minessale@hotmail.com</a><br>&gt;&gt;&gt; GTALK/JABBER/<a href="mailto:PAYPAL%3Aanthony.minessale@gmail.com" target="_blank">PAYPAL:anthony.minessale@gmail.com</a><br>





&gt;&gt;&gt; IRC: <a href="http://irc.freenode.net" target="_blank">irc.freenode.net</a> #freeswitch<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; FreeSWITCH Developer Conference<br>&gt;&gt;&gt; <a href="mailto:sip%3A888@conference.freeswitch.org" target="_blank">sip:888@conference.freeswitch.org</a><br>





&gt;&gt;&gt; <a href="mailto:googletalk%3Aconf%2B888@conference.freeswitch.org" target="_blank">googletalk:conf+888@conference.freeswitch.org</a><br>&gt;&gt;&gt; pstn:<a href="tel:%2B19193869900" value="+19193869900" target="_blank">+19193869900</a><br>


&gt;&gt;&gt;<br>&gt;&gt;&gt; _______________________________________________<br>


&gt;&gt;&gt; FreeSWITCH-dev mailing list<br>&gt;&gt;&gt; <a href="mailto:FreeSWITCH-dev@lists.freeswitch.org" target="_blank">FreeSWITCH-dev@lists.freeswitch.org</a><br>&gt;&gt;&gt; <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev</a><br>





&gt;&gt;&gt; UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-dev</a><br>&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>





&gt;&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; _______________________________________________<br>&gt;&gt; FreeSWITCH-dev mailing list<br>&gt;&gt; <a href="mailto:FreeSWITCH-dev@lists.freeswitch.org" target="_blank">FreeSWITCH-dev@lists.freeswitch.org</a><br>





&gt;&gt; <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev</a><br>&gt;&gt; UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-dev</a><br>





&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>&gt;&gt;<br>&gt;&gt;<br></div>
</div></div><br>_______________________________________________<br>
FreeSWITCH-dev mailing list<br>
<a href="mailto:FreeSWITCH-dev@lists.freeswitch.org" target="_blank">FreeSWITCH-dev@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-dev</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br></blockquote></div><br><div style="padding:0px;margin-left:0px;margin-top:0px;overflow:hidden;word-wrap:break-word;color:black;font-size:10px;text-align:left;line-height:130%">

</div>
</div></div><br>_______________________________________________<br>
FreeSWITCH-dev mailing list<br>
<a href="mailto:FreeSWITCH-dev@lists.freeswitch.org" target="_blank">FreeSWITCH-dev@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-dev</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
Join us at ClueCon 2011, Aug 9-11, Chicago<br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a> 877-7-4ACLUE<br>
<br>
FreeSWITCH-dev mailing list<br>
<a href="mailto:FreeSWITCH-dev@lists.freeswitch.org">FreeSWITCH-dev@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-dev" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-dev</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br></blockquote></div><br><div style="visibility: hidden; left: -5000px; position: absolute; z-index: 9999; padding: 0px; margin-left: 0px; margin-top: 0px; overflow: hidden; word-wrap: break-word; color: black; font-size: 10px; text-align: left; line-height: 130%;" id="avg_ls_inline_popup">

</div>