[Ace-users] [ace-users] Building TAO using AMH fails with link error.

Douglas C. Schmidt schmidt at dre.vanderbilt.edu
Tue Dec 11 11:50:26 CST 2007


Hi Gilad,

   Thanks for using the PRF.

>   ACE VERSION: 5.5.1

Please upgrade to ACE+TAO+CIAO x.6.1 (i.e., ACE 5.6.1, TAO 1.6.1, and
CIAO 0.6.1), which you can download from

http://download.dre.vanderbilt.edu

under the heading: "Latest Beta Kit."

The DOC groups at Washington University, UC Irvine, and Vanderbilt
University only provide "best effort" support for non-sponsors for the
latest release, as described in

http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/docs/ACE-bug-process.html

Thus, if you need more "predictable" help for earlier versions of
ACE+TAO, I recommend that you check out

http://www.dre.vanderbilt.edu/support.html

for a list of companies that will provide you with ACE+TAO commercial
support.

Thanks,

        Doug


>    HOST MACHINE and OPERATING SYSTEM:
>        Vanilla Ubuntu Feisty 7.10
>        Intel Q6600, 4GB of Ram
>
>    COMPILER NAME AND VERSION (AND PATCHLEVEL):
>        4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)
>
>    AREA/CLASS/EXAMPLE AFFECTED:
>        Trading_Service
>
>    DOES THE PROBLEM AFFECT:
>        COMPILATION? Yes
>        LINKING? Yes
>
>    SYNOPSIS:
>        When building TAO, I have modified the
>        TAO/orbsvcs/orbsvcs/Makefile file to execute
>        tao_idl using -GH to generate AMH enabled classes.
>        This makes the build fail when it reaches
>        Trading_Service with a link error.
>
>    DESCRIPTION:
>===================================================
>LONG PASTE ALERT
>===================================================
>Making all in Trading_Service
>make[3]: Entering directory
>`/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/Trading_Service'
>/bin/sh ../../libtool --mode=link --tag=CXX g++  -g -O2 -pthread   -o
>Trading_Service  Trading_Service-Trading_Server.o
>Trading_Service-Trading_Service.o ../../orbsvcs/orbsvcs/
>libTAO_CosTrading_Serv.la ../../tao/libTAO_IORTable.la ../../orbsvcs/
>orbsvcs/libTAO_Svc_Utils.la ../../tao/libTAO_DynamicAny.la ../../
>orbsvcs/orbsvcs/libTAO_CosTrading_Skel.la ../../orbsvcs/orbsvcs/
>libTAO_CosTrading.la ../../orbsvcs/orbsvcs/libTAO_CosNaming.la ../../
>tao/libTAO_Utils.la ../../tao/libTAO_PI.la ../../tao/
>libTAO_CodecFactory.la ../../tao/libTAO_PortableServer.la ../../tao/
>libTAO_AnyTypeCode.la ../../tao/libTAO.la ../../../ace/libACE.la
>g++ -g -O2 -o .libs/Trading_Service Trading_Service-Trading_Server.o
>Trading_Service-Trading_Service.o
>-pthread ../../orbsvcs/orbsvcs/.libs/libTAO_CosTrading_Serv.so /home/
>fabrix/ACE_wrappers/build/TAO/tao/.libs/libTAO_IORTable.so /home/
>fabrix/ACE_wrappers/build/TAO/tao/.libs/libTAO_Utils.so /home/fabrix/
>ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/libTAO_Svc_Utils.so /home/
>fabrix/ACE_wrappers/build/TAO/tao/.libs/libTAO_DynamicAny.so /home/
>fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so ../../tao/.libs/libTAO_IORTable.so ../../
>orbsvcs/orbsvcs/.libs/libTAO_Svc_Utils.so ../../tao/.libs/
>libTAO_DynamicAny.so ../../orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so /home/fabrix/ACE_wrappers/build/TAO/orbsvcs/
>orbsvcs/.libs/libTAO_CosTrading.so ../../orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so ../../orbsvcs/orbsvcs/.libs/
>libTAO_CosNaming.so ../../tao/.libs/libTAO_Utils.so /home/fabrix/
>ACE_wrappers/build/TAO/tao/.libs/libTAO_PI.so /home/fabrix/
>ACE_wrappers/build/TAO/tao/.libs/libTAO_PortableServer.so ../../
>tao/.libs/libTAO_PI.so /home/fabrix/ACE_wrappers/build/TAO/tao/.libs/
>libTAO_CodecFactory.so ../../tao/.libs/libTAO_CodecFactory.so ../../
>tao/.libs/libTAO_PortableServer.so /home/fabrix/ACE_wrappers/build/TAO/
>tao/.libs/libTAO_AnyTypeCode.so ../../tao/.libs/libTAO_AnyTypeCode.so /
>home/fabrix/ACE_wrappers/build/TAO/tao/.libs/libTAO.so ../../tao/.libs/
>libTAO.so /home/fabrix/ACE_wrappers/build/ace/.libs/libACE.so ../../../
>ace/.libs/libACE.so -lrt -ldl
>Trading_Service-Trading_Server.o: In function
>`__static_initialization_and_destruction_0':
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/
>Trading_Service/../../../../TAO/tao/Valuetype/Valuetype_Adapter_Impl.h:
>73: undefined reference to `TAO_Valuetype_Adapter_Impl::Initializer()'
>Trading_Service-Trading_Service.o: In function
>`__static_initialization_and_destruction_0':
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/
>Trading_Service/../../../../TAO/tao/Valuetype/Valuetype_Adapter_Impl.h:
>73: undefined reference to `TAO_Valuetype_Adapter_Impl::Initializer()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to `virtual thunk to
>CORBA::DefaultValueRefCountBase::_refcount_value()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`CORBA::ValueBase::_tao_marshal(TAO_OutputCDR&, CORBA::ValueBase
>const*, int)'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to
>`TAO::ARH_Refcount_Functor::operator()(TAO_AMH_Response_Handler*)'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`CORBA::DefaultValueRefCountBase::DefaultValueRefCountBase()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to `virtual thunk to
>TAO_AMH_Response_Handler::~TAO_AMH_Response_Handler()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to
>`TAO_AMH_Response_Handler::~TAO_AMH_Response_Handler()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`CORBA::DefaultValueRefCountBase::_remove_ref()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to `virtual thunk to
>CORBA::DefaultValueRefCountBase::~DefaultValueRefCountBase()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to `virtual thunk to
>TAO_AMH_Response_Handler::~TAO_AMH_Response_Handler()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to `typeinfo for
>CORBA::DefaultValueRefCountBase'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`TAO::Value_Traits<CORBA::ValueFactoryBase>::remove_ref(CORBA::ValueFactoryBase*)'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`CORBA::DefaultValueRefCountBase::~DefaultValueRefCountBase()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to
>`TAO_AMH_Response_Handler::~TAO_AMH_Response_Handler()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to `virtual thunk to
>CORBA::DefaultValueRefCountBase::~DefaultValueRefCountBase()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to `typeinfo for
>TAO_AMH_Response_Handler'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`CORBA::DefaultValueRefCountBase::~DefaultValueRefCountBase()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`CORBA::ValueBase::ValueBase()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to
>`TAO_AMH_Response_Handler::_tao_rh_init_reply()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to `virtual thunk to
>CORBA::DefaultValueRefCountBase::_remove_ref()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to `typeinfo for
>CORBA::ValueBase'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`CORBA::DefaultValueRefCountBase::~DefaultValueRefCountBase()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to `virtual thunk to
>CORBA::DefaultValueRefCountBase::_add_ref()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to
>`TAO_AMH_Response_Handler::~TAO_AMH_Response_Handler()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`CORBA::ValueBase::_tao_unmarshal_pre(TAO_InputCDR&,
>CORBA::ValueFactoryBase*&, CORBA::ValueBase*&, char const*)'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to
>`TAO_AMH_Response_Handler::_tao_rh_send_reply()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to
>`TAO_AMH_Response_Handler::init(TAO_ServerRequest&, ACE_Allocator*)'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to
>`TAO_AMH_Response_Handler::_remove_ref()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`CORBA::DefaultValueRefCountBase::_refcount_value()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to
>`TAO_AMH_Response_Handler::TAO_AMH_Response_Handler()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`CORBA::DefaultValueRefCountBase::_add_ref()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to `virtual thunk to
>TAO_AMH_Response_Handler::_remove_ref()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading.so: undefined reference to
>`CORBA::ValueBase::~ValueBase()'
>/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/orbsvcs/.libs/
>libTAO_CosTrading_Skel.so: undefined reference to
>`TAO_AMH_Response_Handler::_tao_rh_send_exception(CORBA::Exception&)'
>collect2: ld returned 1 exit status
>make[3]: *** [Trading_Service] Error 1
>make[3]: Leaving directory
>`/home/fabrix/ACE_wrappers/build/TAO/orbsvcs/Trading_Service'
>make[2]: *** [all-recursive] Error 1
>make[2]: Leaving directory `/home/fabrix/ACE_wrappers/build/TAO/
>orbsvcs'
>make[1]: *** [all-recursive] Error 1
>make[1]: Leaving directory `/home/fabrix/ACE_wrappers/build/TAO'
>make: *** [all-recursive] Error 1
>
>
>    REPEAT BY:
>        run configure as usual, then modify
>        TAO/orbsvcs/orbsvcs/Makefile, add -GH to the
>        TAO_IDLFLAGS variable, make clean and recompile.
>
>    SAMPLE FIX/WORKAROUND:
>        None I could find...


-- 
Dr. Douglas C. Schmidt                       Professor and Associate Chair
Electrical Engineering and Computer Science  TEL: (615) 343-8197
Vanderbilt University                        WEB: www.dre.vanderbilt.edu/~schmidt
Nashville, TN 37203                          NET: d.schmidt at vanderbilt.edu



More information about the Ace-users mailing list