С++: gloox (Jabber/XMPP)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Ru}{eeZ, 22 Mar 2011.

  1. Ru}{eeZ

    Ru}{eeZ Elder - Старейшина

    Joined:
    19 Feb 2008
    Messages:
    454
    Likes Received:
    73
    Reputations:
    -5
    Пытаюсь скомпилировать в gcc 4.4.5:

    Code:
    #include <gloox/client.h>
    #include <gloox/disco.h>
    
    int main()
    {
        gloox::Client* client = new gloox::Client("[email protected]/test", "123456"); //строка 6
    
        client->disableRoster();
    
        client->setPresence(gloox::Presence::Available, -1);
    
        client->disco()->setVersion("gloox", gloox::GLOOX_VERSION, "Jukovec-oo.blog.tut.by");
        client->disco()->setIdentity("Simple", "Bot");
    
        client->setCompression(false);
    
        client->connect();
    
        return 0;
    }
    
    Выдаёт:
    Code:
    /home/wz/proj_qt/jabber_2-build-desktop/../jabber_2/main.cpp:6: error: no matching function for call to ‘gloox::Client::Client(const char [20], const char [7])’
    
     
  2. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    через че компилишь? через консоль? и как компилишь
     
  3. Ru}{eeZ

    Ru}{eeZ Elder - Старейшина

    Joined:
    19 Feb 2008
    Messages:
    454
    Likes Received:
    73
    Reputations:
    -5
    Qt Creator 2.0.1
    Qt 4.7
     
  4. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    проверь подключен ли lib файл gloox'а к проекту
     
  5. Ru}{eeZ

    Ru}{eeZ Elder - Старейшина

    Joined:
    19 Feb 2008
    Messages:
    454
    Likes Received:
    73
    Reputations:
    -5
    инклуды нормально инклудят (проверял изменением имени, появляются ошибки), а файл проекта (jabber_2.pro) выглядит следующим образом:

    Code:
    #-------------------------------------------------
    #
    # Project created by QtCreator 2011-03-22T19:18:10
    #
    #-------------------------------------------------
    
    QT       += core
    
    QT       -= gui
    
    TARGET = jabber_2
    CONFIG   += console
    CONFIG   -= app_bundle
    
    TEMPLATE = app
    
    
    SOURCES += main.cpp
    
     
  6. Ru}{eeZ

    Ru}{eeZ Elder - Старейшина

    Joined:
    19 Feb 2008
    Messages:
    454
    Likes Received:
    73
    Reputations:
    -5
    какие ещё будут идеи?
     
  7. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    тут явно не видит либы или не подключил или не установил. либо переустанови
     
  8. GRRRL Power

    GRRRL Power Elder - Старейшина

    Joined:
    13 Jul 2010
    Messages:
    823
    Likes Received:
    185
    Reputations:
    84
    Твой вызов функции не совпадает с допустимыми прототипами конструктора класса, ты параметры неправильно передаешь, не тех типов. Все советы выше не относятся к делу, текст ошибки читать надо.
     
  9. Ru}{eeZ

    Ru}{eeZ Elder - Старейшина

    Joined:
    19 Feb 2008
    Messages:
    454
    Likes Received:
    73
    Reputations:
    -5
    я уже по манам сделал:
    Code:
    gloox::JID jid( "[email protected]/test" );
        gloox::Client* client = new gloox::Client(jid, "123456");
    
    в файлах нашёл jid.h и подрубил:
    Code:
    #include <gloox/jid.h>
    Code:
    /home/wz/proj_qt/jabber_2-build-desktop/../jabber_2/main.cpp:8: error: undefined reference to `gloox::Client::Client(gloox::JID const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)' ..............
    ----
    подрубил либу в .pro файл, теперь компилирует:

    LIBS += /usr/local/lib/libgloox.so
     
    #9 Ru}{eeZ, 23 Mar 2011
    Last edited: 23 Mar 2011
  10. GRRRL Power

    GRRRL Power Elder - Старейшина

    Joined:
    13 Jul 2010
    Messages:
    823
    Likes Received:
    185
    Reputations:
    84
    gloox::JID