<div>I resolved most of the udefined reference errors exceot the one below:</div>
<div>&nbsp;</div>
<div>../libxipc/.libs/libxipc.a(xrl_pf_kill.o)(.text+0x254): In function `XrlPFKillSender::send(Xrl const&amp;, bool, ref_ptr&lt;XorpCallback2&lt;void, XrlError const&amp;, XrlArgs*&gt; &gt; const&amp;)&#39;:<br>/home/scevher/xorp/libxipc/xrl_pf_kill.cc:101: undefined reference to `__cxa_get_exception_ptr&#39;<br>
../libxipc/.libs/libxipc.a(xrl_pf_sudp.o)(.text._ZNSs12_S_constructIN9__gnu_cxx17__normal_iteratorIPKcSsEEEEPcT_S6_RKSaIcESt20forward_iterator_tag[char* std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;::_S_construct&lt;__gnu_cxx::__normal_iterator&lt;char const*, std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;(__gnu_cxx::__normal_iterator&lt;char const*, std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;, __gnu_cxx::__normal_iterator&lt;char const*, std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;, std::allocator&lt;char&gt; const&amp;, std::forward_iterator_tag)]+0x13a): In function `char* std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;::_S_construct&lt;__gnu_cxx::__normal_iterator&lt;char const*, std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;(__gnu_cxx::__normal_iterator&lt;char const*, std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;, __gnu_cxx::__normal_iterator&lt;char const*, std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;, std::allocator&lt;char&gt; const&amp;, std::forward_iterator_tag)&#39;:<br>
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/basic_string.tcc:158: undefined reference to `std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;::_Rep::_M_set_length_and_sharable(unsigned int)&#39;<br>
../libxipc/.libs/libxipc.a(finder_tcp.o)(.text+0x1645): In function `FinderTcpBase::read_callback(AsyncFileOperator::Event, unsigned char const*, unsigned int, unsigned int)&#39;:<br>/home/scevher/xorp/libxipc/finder_tcp.cc:161: undefined reference to `__cxa_get_exception_ptr&#39;<br>
collect2: ld returned 1 exit status</div>
<div>&nbsp;</div>
<div>Here is the order in which I include the libraries in Makefile.am file:</div>
<div>&nbsp;</div>
<div>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/policy/backend/<a href="http://libpolicybackend.la">libpolicybackend.la</a><br>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/interfaces/<a href="http://libfindereventnotifierxif.la">libfindereventnotifierxif.la</a><br>
LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/interfaces/<a href="http://libfeaifmgrmirrorxif.la">libfeaifmgrmirrorxif.la</a><br>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/interfaces/<a href="http://libfeaifmgrreplicatorxif.la">libfeaifmgrreplicatorxif.la</a><br>
LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/interfaces/<a href="http://libospfv2xif.la">libospfv2xif.la</a><br>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/targets/<a href="http://libfeaifmgrmirrorbase.la">libfeaifmgrmirrorbase.la</a><br>
LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/libxipc/<a href="http://libxipc.la">libxipc.la</a><br>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/libcomm/<a href="http://libcomm.la">libcomm.la</a><br>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/libxorp/<a href="http://libxorp.la">libxorp.la</a></div>

<div>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/ospf/<a href="http://libospf.la">libospf.la</a><br>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/libfeaclient/<a href="http://libfeaclient.la">libfeaclient.la</a><br>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/interfaces/<a href="http://libribxif.la">libribxif.la</a><br>
LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/targets/<a href="http://libospfv2base.la">libospfv2base.la</a><br>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/targets/<a href="http://libospfv3base.la">libospfv3base.la</a><br>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/interfaces/<a href="http://libprofileclientxif.la">libprofileclientxif.la</a><br>
LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/interfaces/<a href="http://libfearawpkt4xif.la">libfearawpkt4xif.la</a><br>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/interfaces/<a href="http://libfearawpkt6xif.la">libfearawpkt6xif.la</a><br>
LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/xrl/targets/<a href="http://libfeaifmgrmirrorbase.la">libfeaifmgrmirrorbase.la</a><br>LDADD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += $(top_builddir)/libproto/<a href="http://libproto.la">libproto.la</a></div>
<div><br>&nbsp;</div>
<div>and here&nbsp;are the source files included in my own Makefile.am file:</div>
<div>&nbsp;</div>
<div># -- Program Sources<br>xorp_pname_SOURCES = xorp_pname.cc</div>
<div># -- Library Sources<br>libpname_la_SOURCES&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = pname_module.h<br>libpname_la_SOURCES&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += pname_node.hh<br>libpname_la_SOURCES&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += xrl_pname_node.hh</div>
<div>libpname_la_SOURCES&nbsp; += $(top_builddir)/ospf/policy_varrw.hh<br>libpname_la_SOURCES&nbsp; += $(top_builddir)/ospf/xrl_io.hh<br>libpname_la_SOURCES&nbsp; += $(top_builddir)/ospf/external.hh<br>libpname_la_SOURCES&nbsp; += $(top_builddir)/ospf/routing_table.hh</div>

<div>libpname_la_SOURCES&nbsp; += $(top_builddir)/ospf/policy_varrw.cc<br>libpname_la_SOURCES&nbsp; += $(top_builddir)/ospf/xrl_io.cc<br>libpname_la_SOURCES&nbsp; += $(top_builddir)/ospf/external.cc<br>libpname_la_SOURCES&nbsp; += $(top_builddir)/ospf/routing_table.cc</div>

<div>libpname_la_SOURCES&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += pname_node.cc<br>libpname_la_SOURCES&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; += xrl_pname_node.cc<br><br>Thanks,</div>
<div>Selcuk<br></div>
<div class="gmail_quote">On Mon, Jun 30, 2008 at 10:49 AM, Bruce M. Simpson &lt;<a href="mailto:bms@icir.org">bms@icir.org</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">
<div>
<div></div>
<div class="Wj3C7c">Selçuk Cevher wrote:<br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">I am trying to resolve an undefined reference problem which I had after integrating some certain functions from area_router.cc with a newly created xorp process.<br>
&nbsp;To make it work, I also included all the libraries contained in Makefile.am file of ospf process in my own Makefile.am file.<br>&nbsp;Even though it successfully compiles after the adaptation of functions from area_router.cc, it gives &quot;undefined reference&quot; errors while linking some certain functions such as SingleVarRW::initialize(int const&amp;, Element*), SingleVarRW::~SingleVarRW(), PolicyTags::PolicyTags(Element const&amp;), IfMgrIfTree::find_interface(std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;) const, IfMgrXrlMirror::~IfMgrXrlMirror(), etc. along with some others.<br>
&nbsp;Why doesn&#39;t it work even though I exactly use the same libraries as ospf does ?<br></blockquote><br></div></div>You need to post your linker error output so someone can help you in more detail.<br><br>The link order is important, and you need to be sure you&#39;re using the same automake primaries for a C++ program target to link.<br>
<br>thanks<br><font color="#888888">BMS<br><br></font></blockquote></div><br>