[Kdenlive-devel] Compiling kde4 on ubuntu 8.04

Fran García fran.miranda at gmail.com
Fri May 30 22:57:45 UTC 2008


Hi,

I'm a total newcomer to kdenlive, but I really like what I see, and I'd
like to thank all the devs for the terrific job you're doing! I'd really
love to help, I just don't think I have the skills, but that's another
story  ;)

I've benn trying to build the kde4 version on Ubuntu 8.04 and, after
chasing a lot of dependencies and fighting a few problems I was succesful.

I wanted to share some of the problems because I'm not really sure if
the problems are in the code or in my machine.

One of the problems was in renderjob.cpp, the compiler kept telling me
that stderr, fprintf, exit and something else I can't remember were
indefined.

With this patch I was able to compile that part:

Index: renderer/renderjob.cpp
===================================================================
--- renderer/renderjob.cpp      (revisión: 2205)
+++ renderer/renderjob.cpp      (copia de trabajo)
@@ -17,8 +17,10 @@
~  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
~    *

***************************************************************************/

-
+#include <stdio.h>
+#include <QFile>
~ #include <QtDBus>
+#include <stdlib.h>

~ #include "renderjob.h"



I stumbled across an error in kthumb.cpp, telling me that tostring in a
kurl was private, and looking in kurl.h it suggested to use the method
url():

Index: src/kthumb.cpp
===================================================================
--- src/kthumb.cpp      (revisión: 2205)
+++ src/kthumb.cpp      (copia de trabajo)
@@ -393,7 +393,7 @@
~ void KThumb::customEvent(QEvent * event) {
~     if (event->type() == 10005) {
~         ProgressEvent* p = (ProgressEvent*) event;
-        m_clipManager->setThumbsProgress(m_url, p->value());
+        m_clipManager->setThumbsProgress(m_url.url(), p->value());
~     }
~ }

The last error I had is something that I don't know if it could be a
problem in the future. Ubuntu 8.04 ships with Qt 4.3, and clipitem.cpp
have calls to QPainterPath::addRoundedRect, which doesn't exist in QT
4.3, but in 4.4.
In Qt 4.3 it is addRoundRect, so I had to reflect that in the code to be
able to compile it.

Unfortunately, after compiling, the first thing it does is crash on me
at start, just after it asks me to say the location of inigo:


kdenlive(10523) MainWindow::parseProfiles: RESULTINGÂ MLT PATH:
"/home/fran/kdenlive/build/share/mlt/profiles/"

Program received signal SIGSEGV, Segmentation fault.
0xb2f19120 in QMutexPool::get () from /usr/lib/libqt-mt.so.3
(gdb) bt
#0  0xb2f19120 in QMutexPool::get () from /usr/lib/libqt-mt.so.3
#1  0xb2bfb286 in QMetaObjectCleanUp::QMetaObjectCleanUp () from
/usr/lib/libqt-mt.so.3
#2  0xb22b9e3a in ?? () from /usr/lib/libkwalletclient.so.1
#3  0xb22c3e65 in ?? () from /usr/lib/libkwalletclient.so.1
#4  0xb22b97e4 in _init () from /usr/lib/libkwalletclient.so.1
#5  0xb7f6c9a0 in ?? () from /lib/ld-linux.so.2
#6  0xb7f6cad3 in ?? () from /lib/ld-linux.so.2
#7  0xb7f70784 in ?? () from /lib/ld-linux.so.2
#8  0xb7f6c5d6 in ?? () from /lib/ld-linux.so.2
#9  0xb7f6ff5e in ?? () from /lib/ld-linux.so.2
#10 0xb6706c19 in ?? () from /lib/tls/i686/cmov/libdl.so.2
#11 0xb7f6c5d6 in ?? () from /lib/ld-linux.so.2
#12 0xb67072bc in ?? () from /lib/tls/i686/cmov/libdl.so.2
#13 0xb6706b51 in dlopen () from /lib/tls/i686/cmov/libdl.so.2
#14 0xb6cdc2aa in mlt_repository_init (directory=0xb6cde888
"/home/fran/kdenlive/build/lib/mlt") at mlt_repository.c:74
#15 0xb6cdb752 in mlt_factory_init (directory=0xb6cde888
"/home/fran/kdenlive/build/lib/mlt") at mlt_factory.c:93
#16 0xb6cee95a in Mlt::Factory::init () from
/home/fran/kdenlive/build/lib/libmlt++.so.0
#17 0x081255b8 in initEffects::parseEffectFiles () at
/home/fran/kdenlive/src/kdenlive/src/initeffects.cpp:78
#18 0x080a80af in MainWindow (this=0x8275b68, parent=0x0) at
/home/fran/kdenlive/src/kdenlive/src/mainwindow.cpp:108
#19 0x0809de95 in main (argc=1, argv=0xbfaad884) at
/home/fran/kdenlive/src/kdenlive/src/main.cpp:23

Looks like it crashes doing Mlt::Factory::init(), maybe is something in
mlt or my kde installation?

Saludos,
~   Fran García




More information about the Kdenlive mailing list