Bug 290419

Summary: latest ktp-contact-list und ktp-send-file fails to build
Product: [Unmaintained] telepathy Reporter: Robby Engelmann <robby.engelmann>
Component: contactlistAssignee: Telepathy Bugs <kde-telepathy-bugs>
Status: RESOLVED NOT A BUG    
Severity: normal CC: kde, mklapetek, robby.engelmann
Priority: NOR    
Version: git-latest   
Target Milestone: 0.4.0   
Platform: Unlisted Binaries   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Robby Engelmann 2012-01-02 17:01:45 UTC
Version:           git-latest (using Devel) 
OS:                Linux

ktp-contact-list fails to build using latest git version


Reproducible: Always

Steps to Reproduce:
cd ./ktp-contact-list
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix`
make

Actual Results:  
Error:
/home/***/Download/Prgs/telepathy/0.3git/ktp-contact-list/contact-list-widget.cpp: In constructor ‘ContactListWidget::ContactListWidget(QWidget*)’:
/home/***/Download/Prgs/telepathy/0.3git/ktp-contact-list/contact-list-widget.cpp:76:38: error: no matching function for call to ‘AccountsModel::AccountsModel(ContactListWidget* const)’
/home/***/Download/Prgs/telepathy/0.3git/ktp-contact-list/contact-list-widget.cpp:76:38: note: candidates are:
/usr/local/include/KTp/Models/accounts-model.h:98:14: note: AccountsModel::AccountsModel(const AccountManagerPtr&, QObject*)
/usr/local/include/KTp/Models/accounts-model.h:98:14: note:   no known conversion for argument 1 from ‘ContactListWidget* const’ to ‘const AccountManagerPtr& {aka const Tp::SharedPtr<Tp::AccountManager>&}’
/usr/local/include/KTp/Models/accounts-model.h:41:5: note: AccountsModel::AccountsModel(const AccountsModel&)
/usr/local/include/KTp/Models/accounts-model.h:41:5: note:   no known conversion for argument 1 from ‘ContactListWidget* const’ to ‘const AccountsModel&’
/home/***/Download/Prgs/telepathy/0.3git/ktp-contact-list/contact-list-widget.cpp: In member function ‘void ContactListWidget::setAccountManager(const AccountManagerPtr&)’:
/home/***/Download/Prgs/telepathy/0.3git/ktp-contact-list/contact-list-widget.cpp:133:15: error: ‘class AccountsModel’ has no member named ‘setAccountManager’
make[2]: *** [CMakeFiles/ktp-contactlist.dir/contact-list-widget.o] Error 1
make[1]: *** [CMakeFiles/ktp-contactlist.dir/all] Error 2
make: *** [all] Error 2


same for ktp-send-file:
>make -j 1
[ 40%] Built target ktp-send-file_automoc
[ 40%] Building CXX object CMakeFiles/ktp-send-file.dir/mainwindow.o
/home/***/Download/Prgs/telepathy/0.3git/ktp-send-file/mainwindow.cpp: In constructor ‘MainWindow::MainWindow(const KUrl&, QWidget*)’:
/home/***/Download/Prgs/telepathy/0.3git/ktp-send-file/mainwindow.cpp:162:45: error: no matching function for call to ‘AccountsModel::AccountsModel(MainWindow* const)’
/home/***/Download/Prgs/telepathy/0.3git/ktp-send-file/mainwindow.cpp:162:45: note: candidates are:
/usr/local/include/KTp/Models/accounts-model.h:98:14: note: AccountsModel::AccountsModel(const AccountManagerPtr&, QObject*)
/usr/local/include/KTp/Models/accounts-model.h:98:14: note:   no known conversion for argument 1 from ‘MainWindow* const’ to ‘const AccountManagerPtr& {aka const Tp::SharedPtr<Tp::AccountManager>&}’
/usr/local/include/KTp/Models/accounts-model.h:41:5: note: AccountsModel::AccountsModel(const AccountsModel&)
/usr/local/include/KTp/Models/accounts-model.h:41:5: note:   no known conversion for argument 1 from ‘MainWindow* const’ to ‘const AccountsModel&’
/home/***/Download/Prgs/telepathy/0.3git/ktp-send-file/mainwindow.cpp: In member function ‘void MainWindow::onAccountManagerReady()’:
/home/robby/Download/Prgs/telepathy/0.3git/ktp-send-file/mainwindow.cpp:189:22: error: ‘class AccountsModel’ has no member named ‘setAccountManager’
make[2]: *** [CMakeFiles/ktp-send-file.dir/mainwindow.o] Error 1
make[1]: *** [CMakeFiles/ktp-send-file.dir/all] Error 2
make: *** [all] Error 2


Expected Results:  
no error, compilation successful

-I am using git source from today
-compiled telepathy-qt from todays git too (uncommented line mentioned here: https://bugs.freedesktop.org/show_bug.cgi?id=44049)

-environment: Kubuntu 11.10, KDE4.8RC1
Comment 1 David Edmundson 2012-01-02 17:02:54 UTC
Update your ktp-common-internals.
Comment 2 Robby Engelmann 2012-01-02 17:08:34 UTC
I got latest ktp-common-internals from git + installed it just before, so should be up to date
Comment 3 Martin Klapetek 2012-01-02 17:17:09 UTC
It's definitely your ktp-common-internals; this was fixed 5 days ago [1]. I just did a clean pull and recompiled to be sure, it works.

[1] - http://quickgit.kde.org/?p=ktp-common-internals.git&a=commitdiff&h=3a91b527a402e67324042e8e596e7fd00665fb2d
Comment 4 Robby Engelmann 2012-01-02 17:55:11 UTC
I just did a

git clone git://anongit.kde.org/ktp-common-internals.git
cd ./ktp-common-internals
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix`
make -j 4
sudo make install

but it still show up the error
Comment 5 Martin Klapetek 2012-01-02 17:57:39 UTC
Can you paste the output of "git describe" of ktp-common-internals?
Comment 6 Robby Engelmann 2012-01-02 23:51:13 UTC
if I call that like this:
git describe git://anongit.kde.org/ktp-common-internals

then the output is:
fatal: Not a git repository (or any parent up to mount parent )
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
Comment 7 Martin Klapetek 2012-01-03 00:06:43 UTC
Simply enter your local copy dir and type just "git describe", nothing more, nothing less (well don't type the quotes..but that's about it).
Comment 8 Robby Engelmann 2012-01-03 06:38:58 UTC
it returns v0.2.0-38-g6403e07
Comment 9 David Edmundson 2012-01-03 10:16:11 UTC
That is the latest...

Next plausible explanation is you have an old version installed in a different location that ktp-contact-list is finding first when you compile it.

Given you install to /usr/ 
Could you check you have no /usr/local/include/KTp

Delete any include/KDETelepathy folders too, they could be screwing with it.
Comment 10 Robby Engelmann 2012-01-20 09:48:31 UTC
I removed all telepathy-related files from my system and build again, now it actually works.
Thanks for the tip.