Michael Haubenwallner | 13 Feb 16:39 2009
Picon

[mico-2.3.13] wireless broken?

Hi,

in mico-2.3.13, with '--enable-wireless', gcc-4.1.2 spits: 

        $ make
        make[2]: Entering directory `/var/tmp/portage/net-misc/mico-2.3.13/work/mico/coss/wireless'
        i686-pc-linux-gnu-g++  -I. -I../../include -O2  -Wall -Wwrite-strings -march=pentium4 -pipe
-fno-strict-aliasing     -c hla.cc -o hla.o
        hla.cc: In function 'int main(int, char**)':
        hla.cc:437: error: cannot allocate an object of abstract type 'HomeLocationService'
        hla.cc:47: note:   because the following virtual functions are pure within 'HomeLocationService':
        ../../include/mico/orb_mico.h:620: note:        virtual CORBA::Boolean
CORBA::ObjectAdapter::validate_connection(CORBA::Object*, CORBA::PolicyList_out)
        ../../include/mico/orb_mico.h:622: note:        virtual void CORBA::ObjectAdapter::timedout_invoke(CORBA::ORBInvokeRec*)
        make[2]: *** [hla.o] Error 1

The configure arguments were:
        $ ./configure \
          --prefix=/usr \
          --build=i686-pc-linux-gnu \
          --host=i686-pc-linux-gnu \
          --mandir=/usr/share/man \
          --infodir=/usr/share/info \
          --datadir=/usr/share \
          --sysconfdir=/etc \
          --localstatedir=/var/lib \
          --disable-mini-stl \
          --disable-threads \
          --with-gtk=/usr \
          --with-pgsql= \
(Continue reading)

Michael Haubenwallner | 13 Feb 17:07 2009
Picon

[mico-2.3.13] bluetooth broken?

Hi,

in mico-2.3.13, --with-bluetooth=/usr, gcc-4.1.2 spits:

        make[1]: Leaving directory `/var/tmp/portage/net-misc/mico-2.3.13/work/mico/include'
        for i in orb ir idl auxdir coss ccm; do make -C $i lib || exit 1; done
        make[1]: Entering directory `/var/tmp/portage/net-misc/mico-2.3.13/work/mico/orb'
        i686-pc-linux-gnu-g++  -I../include  -O2  -Wall -Wwrite-strings -march=pentium4 -pipe
-fno-strict-aliasing   -DPIC -fPIC  -c ltp_address.cc -o ltp_address.pic.o
        ltp_address.cc: In function 'bdaddr_t* strtoba2(char*)':
        ltp_address.cc:102: warning: deprecated conversion from string constant to 'char*''
        ltp_address.cc: In member function 'virtual CORBA::Transport*
MICOLTP::LTPAddress::make_transport() const':
        ltp_address.cc:221: error: cannot allocate an object of abstract type 'MICOLTP::LTPTransport'
        ../include/mico/ltp.h:150: note:   because the following virtual functions are pure within 'MICOLTP::LTPTransport':
        ../include/mico/transport.h:105: note:  virtual CORBA::Boolean CORBA::Transport::connect(const
CORBA::Address*, CORBA::ULong, CORBA::Boolean&)
        make[1]: *** [ltp_address.pic.o] Error 1

The configure arguments were:

        $ ./configure \
          --prefix=/usr \
          --build=i686-pc-linux-gnu \
          --host=i686-pc-linux-gnu \
          --mandir=/usr/share/man \
          --infodir=/usr/share/info \
          --datadir=/usr/share \
          --sysconfdir=/etc \
          --localstatedir=/var/lib \
(Continue reading)

Jaakko Kangasharju | 13 Feb 17:56 2009
X-Face
Picon
Picon

Re: [mico-2.3.13] wireless broken?

Michael Haubenwallner <haubi <at> gentoo.org> writes:

> in mico-2.3.13, with '--enable-wireless', gcc-4.1.2 spits: 
>
>         $ make
>         make[2]: Entering directory `/var/tmp/portage/net-misc/mico-2.3.13/work/mico/coss/wireless'
>         i686-pc-linux-gnu-g++  -I. -I../../include -O2  -Wall -Wwrite-strings -march=pentium4 -pipe
-fno-strict-aliasing     -c hla.cc -o hla.o
>         hla.cc: In function 'int main(int, char**)':
>         hla.cc:437: error: cannot allocate an object of abstract type 'HomeLocationService'
>         hla.cc:47: note:   because the following virtual functions are pure within 'HomeLocationService':
>         ../../include/mico/orb_mico.h:620: note:        virtual CORBA::Boolean
CORBA::ObjectAdapter::validate_connection(CORBA::Object*, CORBA::PolicyList_out)
>         ../../include/mico/orb_mico.h:622: note:        virtual void CORBA::ObjectAdapter::timedout_invoke(CORBA::ORBInvokeRec*)
>         make[2]: *** [hla.o] Error 1
>
> Any idea what happens here?

The wireless parts haven't been kept up-to-date with the rest of MICO,
since I haven't worked on CORBA for ages. I think the last time I
touched MICO was in 2004 or something. It seems that the ObjectAdapter
class acquired some new virtual functions between the time anyone used
the wireless parts and now. The same seems to be the case with the
Bluetooth problem that you also had.

It doesn't seem like it would be too much work to update these parts,
or at least to write the implementations of the virtual functions so
that they compile. I'm pretty sure I still remember enough of MICO to
be able to do it, unless someone else wants to begin maintaining the
wireless parts.
(Continue reading)

Michael Haubenwallner | 13 Feb 18:11 2009
Picon

Re: [mico-2.3.13] wireless broken?

On Fri, 2009-02-13 at 18:56 +0200, Jaakko Kangasharju wrote:
> Michael Haubenwallner <haubi <at> gentoo.org> writes:

> >         hla.cc:47: note:   because the following virtual functions are pure within 'HomeLocationService':

> The wireless parts haven't been kept up-to-date with the rest of MICO,

> The same seems to be the case with the Bluetooth problem that you also had.

It's not that I really need or were asked to enable them, just thought
it would be fine to have them buildable. It's ok with me to know they
are unmaintained and eventually removed from future versions.

OTOH, especially wireless networks usage recently grows...

Thanks you anyway,
/haubi/
--

-- 
Michael Haubenwallner
Gentoo on a different level
Karel Gardas | 14 Feb 20:24 2009

Re: [mico-2.3.13] wireless broken?

Jaakko Kangasharju wrote:
> Michael Haubenwallner <haubi <at> gentoo.org> writes:
> 
>> in mico-2.3.13, with '--enable-wireless', gcc-4.1.2 spits: 
>>
>>         $ make
>>         make[2]: Entering directory `/var/tmp/portage/net-misc/mico-2.3.13/work/mico/coss/wireless'
>>         i686-pc-linux-gnu-g++  -I. -I../../include -O2  -Wall -Wwrite-strings -march=pentium4 -pipe
-fno-strict-aliasing     -c hla.cc -o hla.o
>>         hla.cc: In function 'int main(int, char**)':
>>         hla.cc:437: error: cannot allocate an object of abstract type 'HomeLocationService'
>>         hla.cc:47: note:   because the following virtual functions are pure within 'HomeLocationService':
>>         ../../include/mico/orb_mico.h:620: note:        virtual CORBA::Boolean
CORBA::ObjectAdapter::validate_connection(CORBA::Object*, CORBA::PolicyList_out)
>>         ../../include/mico/orb_mico.h:622: note:        virtual void CORBA::ObjectAdapter::timedout_invoke(CORBA::ORBInvokeRec*)
>>         make[2]: *** [hla.o] Error 1
>>
>> Any idea what happens here?
> 
> The wireless parts haven't been kept up-to-date with the rest of MICO,
> since I haven't worked on CORBA for ages. I think the last time I
> touched MICO was in 2004 or something. It seems that the ObjectAdapter
> class acquired some new virtual functions between the time anyone used
> the wireless parts and now. The same seems to be the case with the
> Bluetooth problem that you also had.
> 
> It doesn't seem like it would be too much work to update these parts,
> or at least to write the implementations of the virtual functions so
> that they compile. I'm pretty sure I still remember enough of MICO to
> be able to do it, unless someone else wants to begin maintaining the
(Continue reading)

Fabrice C | 18 Feb 15:31 2009
Picon

toc problems

I have problem to link my application with mico.

I'm on this platform :
os : linux SLES 10
cpu : PowerPC 64 bits ppc64

and mico 2.3.13

I check with 2 compilers to generate mico : GNU and IBM


- I use the GNU compiler to generate mico (c++ and gcc with option -mminimal-toc).
No problem to generate mico.
I link my application to mico and I have this error :

ld:/workdev/MTS/fabrice/MICO/mico-2.3.13/mico/lib/libmico2.3.13.a(orb.o)(.text._ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E[_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E]+0x50): sibling call optimization to `_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E' does not allow automatic multiple TOCs; recompile with -mminimal-toc or -fno-optimize-sibling-calls, or make `_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E' extern



- I use the IBM compiler to generate mico (xlc++_r and xlc with option -qminimaltoc).
No problem to generate mico.
I link my application to mico and I have this error :

libmico2.3.13.a(ir.o):(.toc1+0x11e8): undefined reference to `POA_CORBA::ExtAbstractInterfaceDef::_get_interface()'
libmico2.3.13.a(ir.o):(.toc1+0x12a8): undefined reference to `POA_CORBA::Container::~Container()'
...
...

I check many case to generate mico but I have always a problem to link with it

Thanks a lot for you help

_______________________________________________
Mico-devel mailing list
Mico-devel <at> mico.org
http://www.mico.org/mailman/listinfo/mico-devel
Fabrice C | 24 Feb 17:13 2009
Picon

Re: toc problems

To link, if I add the library micoir, I successfuly link my application and also exemples inside the pacakge mico.

I don't understand ... is a particularity of my architecture : xlc compiler on linux/ppc64
because in each Makefile, there is only the $(LIBMICO)

For exemple, in the directory daemon, I show an extract of the Makefile :

    43  micod: $(MICODOBJS) ../orb/$(LIBMICO)
    44          $(CXX) $(CXXFLAGS) $(LDFLAGS) $(MICODOBJS) $(LDLIBS) -o $ <at>
    45          $(POSTLD) $ <at>

and me, I need to modify the Makefile like this :

    43  micod: $(MICODOBJS) ../orb/$(LIBMICO) ../ir/$(LIBMICOIR)
    44          $(CXX) $(CXXFLAGS) $(LDFLAGS) $(MICODOBJS) $(LDLIBS) -o $ <at>
    45          $(POSTLD) $ <at>
 
thanks for your advice

_______________________________________________
Mico-devel mailing list
Mico-devel <at> mico.org
http://www.mico.org/mailman/listinfo/mico-devel
ml.plehong | 26 Feb 10:27 2009
Picon

config.h in include/mico

While trying to solve my problem (MAIN_THREAD_MODEL POA), I realized that MICO installs a config.h file in
include/mico, that is included indirectly by CORBA.h.

This is considered bad practice (see
http://sources.redhat.com/autobook/autobook/autobook_96.html) and is very annoying for people
using many others packages in their software.

One solution would be:

1. Split that file into 2 parts: one that is needed by the installed include files and one that is only needed
during the build process.

2. Rename typedefs and macros in the public part by prefixing them with MICO_ or mico_

Since it would involve modifying lots of file, it should be done while no big changes are taking place. But is
such a change planned for MICO somewhere in time ?

Gmane