This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Compiling Ktorrent 3.1b2 on Fedora 9

Tags: None
(comma "," separated)
Jesper
Registered Member
Posts
54
Karma
0

Compiling Ktorrent 3.1b2 on Fedora 9

Wed May 28, 2008 10:59 am
Hi guys (girls too if any) :)

I have gotten tired of waiting for Redhat to update their rpm repo to include the latest version of KTorrent. So I've decided to give the source a whirl but I have a problem with it.

Code: Select all
[ 56%] Building CXX object plugins/search/CMakeFiles/ktsearchplugin.dir/searchpluginsettings.o
make[2]: *** No rule to make target `/usr/lib64/libgif.so', needed by `lib/ktsearchplugin.so'.  Stop.
make[1]: *** [plugins/search/CMakeFiles/ktsearchplugin.dir/all] Error 2
make: *** [all] Error 2

I have /usr/lib64/libgif.so.4 from giflib-4.1.3-9.x86_64

I am running a pure x86_64 Fedora 9 environment on my AMD Ath 64 X2 Dual Core 4000+ ~ 1024MB DDR RAM.

I followed the simple instructions from this page with the exception not to change directory to "build" as that gives an error:
CMake Error: The source directory "ktorrent-3.1beta2/build" does not appear to contain CMakeLists.txt."

Commands run:
Code: Select all
$ cmake -DCMAKE_INSTALL_PREFIX=/usr/lib64/kde4/
$ make

Then obvious the error occured, any ideas would be greatly appreciated, as I doubt it will be enough simply so symlink it.


chronniff
Registered Member
Posts
1
Karma
0

Fri Jun 20, 2008 12:41 am
I am too having that same compile error.....need help if anyone has any ideas

the first cmake error in the build directory is because you didn't include the two dots at the end of the command to tell it to go to the directory above to look for the file....look at the instructions more carefully they do include the trailing dots but are easy to miss
George
Moderator
Posts
5421
Karma
1
Jesper wrote:Hi guys (girls too if any) :)

I have gotten tired of waiting for Redhat to update their rpm repo to include the latest version of KTorrent. So I've decided to give the source a whirl but I have a problem with it.

Code: Select all
[ 56%] Building CXX object plugins/search/CMakeFiles/ktsearchplugin.dir/searchpluginsettings.o
make[2]: *** No rule to make target `/usr/lib64/libgif.so', needed by `lib/ktsearchplugin.so'.  Stop.
make[1]: *** [plugins/search/CMakeFiles/ktsearchplugin.dir/all] Error 2
make: *** [all] Error 2

I have /usr/lib64/libgif.so.4 from giflib-4.1.3-9.x86_64

I am running a pure x86_64 Fedora 9 environment on my AMD Ath 64 X2 Dual Core 4000+ ~ 1024MB DDR RAM.

I followed the simple instructions from this page with the exception not to change directory to "build" as that gives an error:
CMake Error: The source directory "ktorrent-3.1beta2/build" does not appear to contain CMakeLists.txt."

Commands run:
Code: Select all
$ cmake -DCMAKE_INSTALL_PREFIX=/usr/lib64/kde4/
$ make

Then obvious the error occured, any ideas would be greatly appreciated, as I doubt it will be enough simply so symlink it.


cmake -DCMAKE_INSTALL_PREFIX=/usr/lib64/kde4/ ..

Don't forget the ..
Jesper
Registered Member
Posts
54
Karma
0

Fri Jun 20, 2008 8:58 am
Hi George, thank you for the reply.. silly me i didn't take notice of the ..

however it does not help
Code: Select all
[ 55%] Building CXX object plugins/search/CMakeFiles/ktsearchplugin.dir/searchpluginsettings.o
make[2]: *** No rule to make target `/usr/lib64/libgif.so', needed by `lib/ktsearchplugin.so'.  Stop.
make[1]: *** [plugins/search/CMakeFiles/ktsearchplugin.dir/all] Error 2
make: *** [all] Error 2

The full output can be read on <old link removed>


To be sure that it should have worked I downloaded the source again. and ran the following:

Code: Select all
# tar -xvjf ktorrent-3.1.tar.bz2
# cd ktorrent-3.1
# mkdir build
# cd  build/
# cmake -DCMAKE_INSTALL_PREFIX=/usr/lib64/kde4/ ..


Code: Select all
# rpm -qa |grep giflib
giflib-4.1.3-9.x86_64

# rpm -ql giflib
/usr/lib64/libgif.so.4
/usr/lib64/libgif.so.4.1.3


Any further help is greatly appreciated :)

Last edited by Jesper on Sat Jun 25, 2011 4:49 pm, edited 1 time in total.


George
Moderator
Posts
5421
Karma
1

Sat Jun 21, 2008 9:15 am
I have a symlink named libgif.so pointing to libgif.so.4.1.6, try making that and it should be OK :

cd /usr/lib64
ln -s libgif.so.4.1.6 libgif.so
Jesper
Registered Member
Posts
54
Karma
0

Sat Jun 21, 2008 5:45 pm
Ok that helped... theres a few other symlinks that needs to be created.

Code: Select all
# ln -s  /lib64/libpcre.so.0 /usr/lib64/libpcre.so
# ln -s  /usr/lib64/libpcreposix.so.0.0.0 /usr/lib64/libpcreposix.so


We are now 69% through the 'make'

Code: Select all
Scanning dependencies of target ktbwschedulerplugin
[ 69%] Building CXX object plugins/bwscheduler/CMakeFiles/ktbwschedulerplugin.dir/ktbwschedulerplugin_automoc.o
In file included from /Upload/ktorrent-3.1/build/plugins/bwscheduler/../../../plugins/bwscheduler/bwprefpage.h:25,
                 from /Upload/ktorrent-3.1/build/plugins/bwscheduler/moc_bwprefpage.cpp:10,
                 from /Upload/ktorrent-3.1/build/plugins/bwscheduler/ktbwschedulerplugin_automoc.cpp:4:
/Upload/ktorrent-3.1/build/plugins/bwscheduler/ui_bwprefpage.h:25:25: error: qformlayout.h: No such file or directory
In file included from /Upload/ktorrent-3.1/build/plugins/bwscheduler/../../../plugins/bwscheduler/bwprefpage.h:25,
                 from /Upload/ktorrent-3.1/build/plugins/bwscheduler/moc_bwprefpage.cpp:10,
                 from /Upload/ktorrent-3.1/build/plugins/bwscheduler/ktbwschedulerplugin_automoc.cpp:4:
/Upload/ktorrent-3.1/build/plugins/bwscheduler/ui_bwprefpage.h:33: error: ISO C++ forbids declaration of ‘QFormLayout’ with no type
/Upload/ktorrent-3.1/build/plugins/bwscheduler/ui_bwprefpage.h:33: error: expected ‘;’ before ‘*’ token
/Upload/ktorrent-3.1/build/plugins/bwscheduler/ui_bwprefpage.h: In member function ‘void Ui_BWPrefPage::setupUi(QWidget*)’:
/Upload/ktorrent-3.1/build/plugins/bwscheduler/ui_bwprefpage.h:53: error: ‘formLayout’ was not declared in this scope
/Upload/ktorrent-3.1/build/plugins/bwscheduler/ui_bwprefpage.h:53: error: expected type-specifier before ‘QFormLayout’
/Upload/ktorrent-3.1/build/plugins/bwscheduler/ui_bwprefpage.h:53: error: expected `;' before ‘QFormLayout’
make[2]: *** [plugins/bwscheduler/CMakeFiles/ktbwschedulerplugin.dir/ktbwschedulerplugin_automoc.o] Error 1
make[1]: *** [plugins/bwscheduler/CMakeFiles/ktbwschedulerplugin.dir/all] Error 2
make: *** [all] Error 2


klash
Registered Member
Posts
1
Karma
0

Sun Jun 22, 2008 3:35 am
Code: Select all
[ 68%] Building CXX object plugins/bwscheduler/CMakeFiles/ktbwschedulerplugin.dir/ktbwschedulerplugin_automoc.o
In file included from /opt/appz/ktorrent-3.1/plugins/bwscheduler/bwprefpage.h:25,
                 from /opt/appz/ktorrent-3.1/plugins/bwscheduler/moc_bwprefpage.cpp:10,
                 from /opt/appz/ktorrent-3.1/plugins/bwscheduler/ktbwschedulerplugin_automoc.cpp:4:
/opt/appz/ktorrent-3.1/plugins/bwscheduler/ui_bwprefpage.h:25:25: error: qformlayout.h: No such file or directory
In file included from /opt/appz/ktorrent-3.1/plugins/bwscheduler/bwprefpage.h:25,
                 from /opt/appz/ktorrent-3.1/plugins/bwscheduler/moc_bwprefpage.cpp:10,
                 from /opt/appz/ktorrent-3.1/plugins/bwscheduler/ktbwschedulerplugin_automoc.cpp:4:
/opt/appz/ktorrent-3.1/plugins/bwscheduler/ui_bwprefpage.h:33: error: ISO C++ forbids declaration of ‘QFormLayout’ with no type
/opt/appz/ktorrent-3.1/plugins/bwscheduler/ui_bwprefpage.h:33: error: expected ‘;’ before ‘*’ token
/opt/appz/ktorrent-3.1/plugins/bwscheduler/ui_bwprefpage.h: In member function ‘void Ui_BWPrefPage::setupUi(QWidget*)’:
/opt/appz/ktorrent-3.1/plugins/bwscheduler/ui_bwprefpage.h:53: error: ‘formLayout’ was not declared in this scope
/opt/appz/ktorrent-3.1/plugins/bwscheduler/ui_bwprefpage.h:53: error: expected type-specifier before ‘QFormLayout’
/opt/appz/ktorrent-3.1/plugins/bwscheduler/ui_bwprefpage.h:53: error: expected `;' before ‘QFormLayout’
make[2]: *** [plugins/bwscheduler/CMakeFiles/ktbwschedulerplugin.dir/ktbwschedulerplugin_automoc.o] Error 1
make[1]: *** [plugins/bwscheduler/CMakeFiles/ktbwschedulerplugin.dir/all] Error 2
make: *** [all] Error 2
[root@amadeus ktorrent-3.1]#


Fedora 9 i386.

Any idea?

Thanks!
George
Moderator
Posts
5421
Karma
1

Sun Jun 22, 2008 3:40 pm
Which Qt version are you running ? QFormLayout was only added in 4.4, so you need that version.
Jesper
Registered Member
Posts
54
Karma
0

Sun Jun 22, 2008 5:17 pm
OK, that's probably why RedHat haven't built an RPM of KTorrent 3.1 for Fedora 9 since QT-4.4.x is only on the devel repo (Fedora 10), I am going to try and install it and I will report back with the results :)


Jesper
Registered Member
Posts
54
Karma
0

Sun Jun 22, 2008 6:36 pm
OK so I got through the 'make' process.
Note that you need to install the qt-4.4 rpms from the devel repo.

I did it this way,
Code: Select all
cd /somewhere/
wget http://download.fedora.redhat.com/pub/fedora/linux/development/x86_64/os/Packages/qt-4.4.0-10.fc10.x86_64.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/development/x86_64/os/Packages/qt-devel-4.4.0-10.fc10.x86_64.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/development/x86_64/os/Packages/qt-doc-4.4.0-10.fc10.x86_64.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/development/x86_64/os/Packages/qt-mysql-4.4.0-10.fc10.x86_64.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/development/x86_64/os/Packages/qt-x11-4.4.0-10.fc10.x86_64.rpm

You can probably get going with yum by enabling the devel repo.
If you use wget remember to change the arch to i386 if you don't have a 64 bit system.
Code: Select all
yum --localinstall qt* --nogpgcheck -y


Then simply cd to the build dir and run 'make' again.
Code: Select all
[100%] Built target pofiles


After running 'make install' it seems to work just dandy, until I opened the settings and looked at plugins, none are listed. I am assuming something went wrong in the build process or symlinking as described above isn't such a good solution, I will try to rebuild it, but probably not be using it, since the 3.1 has the same speed issues as 3.0.x I've reported earlier.

A fine example is that KTorrent 3.1 on this torrent gives speeds around 10-200KBps where 2.x gives speeds around 1200KBps, a good way to test the speeds are on torrents with lots of users :)

I will report back with the results of a rebuild.


Jesper
Registered Member
Posts
54
Karma
0

Sun Jun 22, 2008 6:59 pm
OK so I rebuilt it and ran it again, same slow speeds, no plugins listed, and I had it crash twice without interacting, well first crash I tried to move the window from the bottom to the middle of the screen, restarted it and it just crashed out of the blue.

Obviously Fedora 9 is either missing some key components or the 3.x series of KTorrent is buggy :(

Conclusion, I am sticking with the Fedora 8 rpm of KTorrent 2.2.7-x for the time being.

Let me know if I can be of any assistance nailing the bugs/errors. :)


George
Moderator
Posts
5421
Karma
1

Mon Jun 23, 2008 7:36 pm
Jesper wrote:After running 'make install' it seems to work just dandy, until I opened the settings and looked at plugins, none are listed. I am assuming something went wrong in the build process or symlinking as described above isn't such a good solution, I will try to rebuild it, but probably not be using it, since the 3.1 has the same speed issues as 3.0.x I've reported earlier.


Run kbuildsycoca4, that should find the plugins if you use the same prefix as your kde4 installation.

A fine example is that KTorrent 3.1 on this torrent gives speeds around 10-200KBps where 2.x gives speeds around 1200KBps, a good way to test the speeds are on torrents with lots of users :)

I will report back with the results of a rebuild.


I tried that torrent with 2.2.7 and latest code and they achieved similar speeds. Obviously this is only one test, but seeing that most of the core download code has not changed that much since the 2.2 series, I would not expect this to happen.

I will run some more tests.


Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot], Yahoo [Bot]