Unable to compile 1.6.4 on Ubuntu server 10.04

The place to discuss linux version of MakeMKV
Post Reply
robolsen
Posts: 2
Joined: Sat Feb 05, 2011 12:23 pm

Unable to compile 1.6.4 on Ubuntu server 10.04

Post by robolsen »

Hi,

I just downloaded the new 1.6.4 version, but when I try to compile the oss package I receive this an error. The complete output is listed below:

Code: Select all

mkdir -p out
gcc -O3 -D_linux_ -oout/makemkv.full -Imakemkvgui/inc -Ilibmakemkv/inc -Isstring/inc -Ilibdriveio/inc \
	makemkvgui/src/aboutbox.cpp makemkvgui/src/client.cpp makemkvgui/src/dirselectbox.cpp makemkvgui/src/logic.cpp makemkvgui/src/logtext.cpp makemkvgui/src/main.cpp makemkvgui/src/nativefiledialog.cpp makemkvgui/src/mainwnd.cpp makemkvgui/src/marshall.cpp makemkvgui/src/progress.cpp makemkvgui/src/scsiinfo.cpp makemkvgui/src/settingdlg.cpp makemkvgui/src/uisync.cpp makemkvgui/src/viteminfo.cpp makemkvgui/src/backupdlg.cpp makemkvgui/src/lstring.cpp makemkvgui/src/notify.cpp makemkvgui/src/str/en_utf16.cpp makemkvgui/src/api_posix.cpp makemkvgui/src/api_linux.cpp makemkvgui/src/logic_posix.cpp makemkvgui/src/notify_linux.cpp tmp/qt_rsrc.cpp tmp/moc_mainwnd.cpp tmp/moc_logtext.cpp tmp/moc_dirselectbox.cpp tmp/moc_aboutbox.cpp tmp/moc_settingdlg.cpp tmp/moc_backupdlg.cpp sstring/src/sstring.cpp libdriveio/src/srlist.cpp \
	-DHAVE_BUILDINFO_H -Itmp \
	-I/usr/include/qt4 -I/usr/lib/qt4/include -L/usr/lib/qt4 -L/usr/lib/qt4/lib -lc -lstdc++ -lQtGui -lQtCore \
	-lpthread -lz -lrt
/tmp/ccpBd3g3.o: In function `notifyEvent(QMainWindow*, unsigned long, char const*, QString const&)':
notify_linux.cpp:(.text+0x1d6): undefined reference to `QDBusAbstractInterface::call(QDBus::CallMode, QString const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&)'
notify_linux.cpp:(.text+0x1e3): undefined reference to `QDBusMessage::~QDBusMessage()'
/tmp/ccpBd3g3.o: In function `notifyInit()':
notify_linux.cpp:(.text+0x53d): undefined reference to `QDBusMessage::QDBusMessage()'
notify_linux.cpp:(.text+0x592): undefined reference to `QDBusConnection::sessionBus()'
notify_linux.cpp:(.text+0x5c5): undefined reference to `QDBusInterface::QDBusInterface(QString const&, QString const&, QString const&, QDBusConnection const&, QObject*)'
notify_linux.cpp:(.text+0x5d4): undefined reference to `QDBusConnection::~QDBusConnection()'
notify_linux.cpp:(.text+0x622): undefined reference to `QDBusAbstractInterface::isValid() const'
notify_linux.cpp:(.text+0x827): undefined reference to `QDBusAbstractInterface::call(QDBus::CallMode, QString const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&)'
notify_linux.cpp:(.text+0x837): undefined reference to `QDBusMessage::operator=(QDBusMessage const&)'
notify_linux.cpp:(.text+0x844): undefined reference to `QDBusMessage::~QDBusMessage()'
notify_linux.cpp:(.text+0x8a8): undefined reference to `QDBusMessage::type() const'
notify_linux.cpp:(.text+0x8d6): undefined reference to `QDBusMessage::~QDBusMessage()'
notify_linux.cpp:(.text+0x95c): undefined reference to `QDBusMessage::arguments() const'
notify_linux.cpp:(.text+0xa03): undefined reference to `QDBusMessage::~QDBusMessage()'
notify_linux.cpp:(.text+0xa73): undefined reference to `QDBusMessage::~QDBusMessage()'
notify_linux.cpp:(.text+0xabd): undefined reference to `QDBusConnection::~QDBusConnection()'
collect2: ld returned 1 exit status
make: *** [out/makemkv.full] Error 1
I have successfully compiled previous versions on the same computer. The computer is up to date with the latest updates.
Am I doing something wrong, or is this package broken?

Best regards,
Robert
Xoratk
Posts: 2
Joined: Sat Feb 05, 2011 4:03 pm

Re: Unable to compile 1.6.4 on Ubuntu server 10.04

Post by Xoratk »

Hello

I have the same problem on XBMClive 10.0 (i think Ubuntu 10.04 32-bit).

I have the problem on an Updated System and also on a fresh XBMClive install.

Dependencies are installed successfully and 1.6.2 works.


Greeting from Switzerland

Xoratk
Bling2Ming
Posts: 24
Joined: Mon Aug 03, 2009 7:20 pm

Re: Unable to compile 1.6.4 on Ubuntu server 10.04

Post by Bling2Ming »

Yes same problem here Ubuntu 32bit Lucid 10.04 Desktop edition.

Code: Select all

tmp/ccpBd3g3.o: In function `notifyEvent(QMainWindow*, unsigned long, char const*, QString const&)':
notify_linux.cpp:(.text+0x1d6): undefined reference to `QDBusAbstractInterface::call(QDBus::CallMode, QString const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&)'
notify_linux.cpp:(.text+0x1e3): undefined reference to `QDBusMessage::~QDBusMessage()'
/tmp/ccpBd3g3.o: In function `notifyInit()':
notify_linux.cpp:(.text+0x53d): undefined reference to `QDBusMessage::QDBusMessage()'
notify_linux.cpp:(.text+0x592): undefined reference to `QDBusConnection::sessionBus()'
notify_linux.cpp:(.text+0x5c5): undefined reference to `QDBusInterface::QDBusInterface(QString const&, QString const&, QString const&, QDBusConnection const&, QObject*)'
notify_linux.cpp:(.text+0x5d4): undefined reference to `QDBusConnection::~QDBusConnection()'
notify_linux.cpp:(.text+0x622): undefined reference to `QDBusAbstractInterface::isValid() const'
notify_linux.cpp:(.text+0x827): undefined reference to `QDBusAbstractInterface::call(QDBus::CallMode, QString const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVaria]nt const&, QVariant const&, QVariant const&)'
notify_linux.cpp:(.text+0x837): undefined reference to `QDBusMessage::operator=(QDBusMessage const&)'
notify_linux.cpp:(.text+0x844): undefined reference to `QDBusMessage::~QDBusMessage()'
notify_linux.cpp:(.text+0x8a8): undefined reference to `QDBusMessage::type() const'
notify_linux.cpp:(.text+0x8d6): undefined reference to `QDBusMessage::~QDBusMessage()'
notify_linux.cpp:(.text+0x95c): undefined reference to `QDBusMessage::arguments() const'
notify_linux.cpp:(.text+0xa03): undefined reference to `QDBusMessage::~QDBusMessage()'
notify_linux.cpp:(.text+0xa73): undefined reference to `QDBusMessage::~QDBusMessage()'
notify_linux.cpp:(.text+0xabd): undefined reference to `QDBusConnection::~QDBusConnection()'
collect2: ld returned 1 exit status
make: *** [out/makemkv.full] Error 1

Just for information, I don't seem to be getting any major problems running the 1.6.4 binary with the 1.6.3 GUI (oss).
z-factor
Posts: 3
Joined: Sat Feb 05, 2011 11:45 pm

Re: Unable to compile 1.6.4 on Ubuntu server 10.04

Post by z-factor »

From what I can tell, additional code was added that makes use of the libQTDBus, but the library was not added to the compile line. The following works for me. Go into makefile.linux and change the line indicated with the '>'. I've included a few lines of context. Basically, you need to add -lQtDBus to the compile line.

out/makemkv.full: $(MAKEMKVGUI_GEN) tmp/gen_buildinfo.h
mkdir -p out
$(GCC) -D_linux_ -o$@ $(MAKEMKVGUI_INC) $(LIBMAKEMKV_INC) $(SSTRING_INC) $(LIBDRIVEIO_INC) \
$(MAKEMKVGUI_SRC) $(MAKEMKVGUI_SRC_LINUX) $(MAKEMKVGUI_GEN) $(SSTRING_SRC) $(LIBDRIVEIO_SRC_PUB) \
-DHAVE_BUILDINFO_H -Itmp \
-I/usr/include/qt4 -I/usr/lib/qt4/include -L/usr/lib/qt4 -L/usr/lib/qt4/lib -lc -lstdc++ -lQtGui -lQtCore \
> -lQtDBus -lpthread -lz -lrt

That makes it happy for me.

-GZ
robolsen
Posts: 2
Joined: Sat Feb 05, 2011 12:23 pm

Re: Unable to compile 1.6.4 on Ubuntu server 10.04

Post by robolsen »

That worked like a charm :) Thanks!
Bling2Ming
Posts: 24
Joined: Mon Aug 03, 2009 7:20 pm

Re: Unable to compile 1.6.4 on Ubuntu server 10.04

Post by Bling2Ming »

Thanks z-factor, works fine for me too.

Just to re-cap for anyone struggling to follow the instructions, open makefile.linux in the editor of your choice.

Change line 57 from:

Code: Select all

-lpthread -lz -lrt
To:

Code: Select all

-lQtDBus -lpthread -lz -lrt
save the file, and retry to compile and everything builds as it should.

Thanks again z-factor your help is much appreciated.
Xoratk
Posts: 2
Joined: Sat Feb 05, 2011 4:03 pm

Re: Unable to compile 1.6.4 on Ubuntu server 10.04

Post by Xoratk »

Hello,

This worked for me too, thank you z-factor and Bling2Ming


Xoratk
BitJam2
Posts: 53
Joined: Wed Sep 01, 2010 7:04 am

Re: Unable to compile 1.6.4 on Ubuntu server 10.04

Post by BitJam2 »

It worked here on Gentoo. Thanks.

Here is the patch file. I called it makemkv-1.6.4.patch. I put it in a "files" subdirectory as per usual:

Code: Select all

diff -u -r makemkv_v1.6.4_oss.orig/makefile.linux makemkv_v1.6.4_oss/makefile.linux
--- makemkv_v1.6.4_oss.orig/makefile.linux	2011-02-03 02:18:14.000000000 -0700
+++ makemkv_v1.6.4_oss/makefile.linux	2011-02-12 02:00:54.000000000 -0700
@@ -54,7 +54,7 @@
 	$(MAKEMKVGUI_SRC) $(MAKEMKVGUI_SRC_LINUX) $(MAKEMKVGUI_GEN) $(SSTRING_SRC) $(LIBDRIVEIO_SRC_PUB) \
 	-DHAVE_BUILDINFO_H -Itmp \
 	-I/usr/include/qt4 -I/usr/lib/qt4/include -L/usr/lib/qt4 -L/usr/lib/qt4/lib -lc -lstdc++ -lQtGui -lQtCore \
-	-lpthread -lz -lrt
+	-lQtDBus -lpthread -lz -lrt
 
 tmp/gen_buildinfo.h:
 	mkdir -p tmp

And then I added the following section to the ebuild file:

Code: Select all

src_unpack() {
	unpack ${A}
	cd ${S}

	epatch "${FILESDIR}"/makemkv-1.6.4.patch
}
HollowMac
Posts: 6
Joined: Sun Nov 21, 2010 6:41 pm

Re: Unable to compile 1.6.4 on Ubuntu server 10.04

Post by HollowMac »

Bling2Ming wrote:Thanks z-factor, works fine for me too.

Just to re-cap for anyone struggling to follow the instructions, open makefile.linux in the editor of your choice.

Change line 57 from:

Code: Select all

-lpthread -lz -lrt
To:

Code: Select all

-lQtDBus -lpthread -lz -lrt
save the file, and retry to compile and everything builds as it should.

Thanks again z-factor your help is much appreciated.
Thanks a lot : it works for me ! :) ;)
richip
Posts: 3
Joined: Sun Oct 24, 2010 1:51 am

Re: Unable to compile 1.6.4 on Ubuntu server 10.04

Post by richip »

Solution is non-distribution dependent, but I thought I may as well mention that it worked on Fedora 14 x86_64
Post Reply