Klasa podklasy z biblioteki współdzielonej skompilowanej z -fno-rtti

Próbuję podklasy ze współdzielonej biblioteki, która została skompilowana z -fno-rtti. Niestety inne biblioteki w mojej bazie kodu wymagają -frtti. W rezultacie otrzymuję błędy łącza, ponieważ nadklasa nie ma struktury informacji o typie.

Błąd odebrany w normalnej kompilacji:

out.o: in function typeinfo for MyClass:myclass.cpp(.data.rel.ro.<cpp magic>): error: undefined reference to 'typeinfo for NetlinkListener'

Klasą, którą chcę podklasować, jest klasa android w libsysutils (trochę za mało miejsca):

class NetlinkListener : public SocketListener {
    char mBuffer[64 * 1024];
    int mFormat;

public:
    static const int NETLINK_FORMAT_ASCII = 0;
    static const int NETLINK_FORMAT_BINARY = 1;

    NetlinkListener(int socket);
    NetlinkListener(int socket, int format);
    virtual ~NetlinkListener() {}

protected:
    virtual bool onDataAvailable(SocketClient *cli);
    virtual void onEvent(NetlinkEvent *evt) = 0;
};

Mój kikut wygląda tak:

class MyClass: public NetlinkListener {

public:
    MyClass();
    virtual ~MyClass();

    int start();
    int stop();

protected:
    virtual void onEvent(NetlinkEvent *evt);
};

Wszystkie metody w MyClass są zaimplementowane (jako puste kody)

Nie mogę skompilować biblioteki współdzielonej -frtti. Czy jest jakiś sposób na obejście tego?

questionAnswers(2)

yourAnswerToTheQuestion