<html><body bgcolor="#FFFFFF"><div>Thanks, I was hoping that cmake would know I wanted the static library linked with the other static library target and grab the object files for that.</div><div><br></div><div>Scott<br><br>On 18 Feb 2010, at 09:00, "David Cole" &lt;<a href="mailto:david.cole@kitware.com">david.cole@kitware.com</a>&gt; wrote:<br><br></div><div></div><blockquote type="cite"><div>You're simply misunderstanding what cmake does with static libs and target_link_libraries.<div><br></div><div>It does nothing to include all symbols in one library... It simply uses that information to chain all the libs together in a final executable.</div>
<div><br></div><div>You can do:</div><div>add_executable(e e.cxx)</div><div>target_link_libraries(e one_final_lib_that_depends_on_all_others)</div><div><br></div><div>...and then e will be linked against *all* of the libs chained together with target_link_libraries calls.<br>
<br></div><div>If you want all the symbols in one static library, you'll have to include all the sources in one add_library call.</div><div><br></div><div><br></div><div>HTH,</div><div>David</div><div><br></div><div><br>
<div class="gmail_quote">On Thu, Feb 18, 2010 at 11:46 AM, Scott MacVicar <span dir="ltr">&lt;<a href="mailto:macvicar@facebook.com"><a href="mailto:macvicar@facebook.com">macvicar@facebook.com</a></a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div bgcolor="#FFFFFF"><div>The linking doesn't include the .a files from the other directories, the final lib is missing those symbols.<span></span></div><div><span><br></span></div><div><span>I checked with nm here, the error doesn't occur until until I attempt to use the built static library.</span></div>
<div><span><br></span></div><font color="#888888"><div><span>Scott</span></div></font><div><div></div><div class="h5"><div><span><br></span></div><div><span>&nbsp;</span></div><div><br>On 18 Feb 2010, at 07:36, "David Cole" &lt;<a href="mailto:david.cole@kitware.com" target="_blank"><a href="mailto:david.cole@kitware.com">david.cole@kitware.com</a></a>&gt; wrote:<br>
<br></div><div></div><blockquote type="cite"><div>What do you mean by "refuses to link the static libraries which are targets from the subfolders"<div><br></div><div>I looked at your CMakeLists.txt files, which, at first glance, look correct... What error do you get?</div>

<div><br></div><div>If you say "make VERBOSE=1" does it give you more data about what might be going wrong?</div><div><br><br></div><div><br><div class="gmail_quote">On Thu, Feb 18, 2010 at 3:48 AM, Scott MacVicar <span dir="ltr">&lt;<a href="mailto:macvicar@facebook.com" target="_blank"></a><a href="mailto:macvicar@facebook.com" target="_blank"><a href="mailto:macvicar@facebook.com">macvicar@facebook.com</a></a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">Hi,<div><br></div><div>I've been converting a current autoconf project to use CMake, the layout is such that there is a root directory and 3 sub directories containing various parts of the project.</div>

<div><br></div><div>filters and nls build two static libs and mbfl builds a third static lib that links to the previous two.</div><div><br></div><div>root</div><div>--filters</div><div>--mbfl</div><div>--nls</div><div><br>

</div><div>mbfl contains</div><div>target_link_libraries(mbfl mbfl_filters)</div><div>target_link_libraries(mbfl mbfl_nls)</div><div><br></div><div>but refuses to link the static libraries which are targets from the subfolders.</div>

<div><br></div><div>Entire repository is available at&nbsp;<a href="http://github.com/scottmac/libmbfl" target="_blank"></a><a href="http://github.com/scottmac/libmbfl" target="_blank"><a href="http://github.com/scottmac/libmbfl">http://github.com/scottmac/libmbfl</a></a>&nbsp;</div>
<div><br></div><div>I could convert it to be built at one single lib in one go but would rather keep parity with the autoconf equivalents.</div>
<div><br></div><div>Any help or pointers would be appreciated.</div><div><br></div><font color="#888888"><div>Scott</div></font></div><br>_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank"></a><a href="http://www.kitware.com" target="_blank"><a href="http://www.kitware.com">www.kitware.com</a></a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank"></a><a href="http://www.kitware.com/opensource/opensource.html" target="_blank"><a href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a></a><br>

<br>
Please keep messages on-topic and check the CMake FAQ at: <a href="http://www.cmake.org/Wiki/CMake_FAQ" target="_blank"></a><a href="http://www.cmake.org/Wiki/CMake_FAQ" target="_blank"><a href="http://www.cmake.org/Wiki/CMake_FAQ">http://www.cmake.org/Wiki/CMake_FAQ</a></a><br>

<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.cmake.org/mailman/listinfo/cmake" target="_blank"></a><a href="http://www.cmake.org/mailman/listinfo/cmake" target="_blank"><a href="http://www.cmake.org/mailman/listinfo/cmake">http://www.cmake.org/mailman/listinfo/cmake</a></a><br></blockquote></div><br></div>

</div></blockquote></div></div></div></blockquote></div><br></div>
</div></blockquote></body></html>