Not compiling on ArchLinux because of SVG in .pro file

Hello everybody.

I tried to compile pencil2D and had a probleme with phonon. I found in the .pro file that the line with phonon was empty. I added /usr/share/phonon.

That, apparantly, worked out fine. But i have a new problem.

it looks like

2:44:13: Débute : "/usr/bin/make"
/usr/bin/qmake-qt4 -spec /usr/share/qt4/mkspecs/linux-g++ CONFIG+=debug CONFIG+=declarative_debug -o Makefile ../pencil-master/pencil.pro
/home/otto/pencil-master/pencil.pro:28: Parse Error ('core gui xmlpatterns svg')
Error processing project file: ../pencil-master/pencil.pro
make: *** [Makefile] Error 3
22:44:13: Le processus "/usr/bin/make" s'est terminé avec le code 2.

And the .pro appears as so

QT += xml \
phonon /usr/share/phonon
core \
gui \
xmlpatterns \
svg \

 

So my question is what can i do to help this and get pencil2D to compile?

I’m gonna make a wild guess that you should add a backslash to the end of the phonon line. The backslash effectively cancels out the line break, so all those lines are actually part of the QT += xml line…apparently just split up for easier reading and editing. Just make sure the backslash is the last character on the line, no spaces after it.

The one at the end (after svg) is not needed, and might actually cause a problem if the following line isn’t blank.

The lines written with the correct backslashes would be the equivalent of this:

QT += xml phonon /usr/share/phonon core gui xmlpatterns svg

I’m not certain /usr/share/phonon is appropriate for this, but that’s an even wilder guess.

Well thank you for the help. But unfortunaly it didn’t solve the problem.

So i redownloaded source code. Recompiled pencil2D but i get the same errors over and over again.

As long as i don’t add the path to phonon i get a “no such file or directory”. And when i add the path i get a" /home/otto/pencil-feature-zipped-file-format/pencil.pro:28: Parse Error (‘core gui xmlpatterns svg’)" error.

Kinda enoying!

It’s probably not here that i should enter the path to phonon. But Where then… Shouldn’t it find out on it’s own?

Well if any of you has a clue, i would bee glad to here about it.

Cheers!

same phonon problem here/ Using salix 64 bit with kde (slackware64 based)

Well i guess wee better find out by ourself then!

Good luck Todor!

By the way could anyone show mee what whereis phonon returns.

Maybe it’s just a matter of link?

[mee@mymachine ~]$ whereis phonon
phonon: /usr/share/phonon

 

@martin_luke

Mine returns /usr/include/phonon /usr/share/phonon

The include is important when building…if you don’t have the phonon dev files as well as the runtime files, programs that use phonon can’t be compiled (the binaries can be run without dev files, but not built). If you do have the dev files installed, maybe it’s a case where you have to do something special in Slackware to tell make where the headers are. It’s been years since i’ve been on Slackware, but i seem to recall sometimes having to manually configure some aspects of the build system.

Unfortunately i don’t have a clue how the qmake thing works, so i can’t make any useful suggestions for a fix.

I also have a /usr/share/phonon directory. But not a file…

I don’t know what to do either… The big deal is had too pull out all orphan binaries for a update a few weeks ago and pencil was one. So i’m left wis no pencil, and no source code i can build…

Hey!

Take a look at this

# Contributor: N3ON <archlinux@alunamation.com>
# Contributor: Emiliano Vavassori <syntaxerrormmm@gmail.com>

pkgname=("pencil-svn")
pkgver=382
pkgrel=2
pkgdesc="Animation/drawing software, that lets you create traditional hand-drawn animation using both bitmap and vector graphics"
url="http://pencil-animation.org/"
license=("GPL2")
arch=("i686" "x86_64")
depends=("qt4" "phonon" "ffmpeg")
makedepends=("subversion" "mesa")
conflicts=("pencil")
source=("svn+https://pencil-planner.svn.sourceforge.net/svnroot/pencil-planner/branches/v0.5/" \
"pencil.desktop" \
"pencil.sh")
md5sums=("SKIP" \
"01a9978f3326c5dc0abe946a00e23fca" \
"67292fa3b8775b3be75e57fafdc699ab")

pkgver() {
cd "$SRCDEST/v0.5"
svnversion | tr -d [A-z]
}

build() {
cd "v0.5"

# Compile fixs
sed -e "18d" -e "26d" -i src/main.cpp
cat < s|^#include $|#include <phonon/MediaObject>\n\
#include <phonon/AudioOutput>|
EOF

qmake-qt4 \
"QMAKE_CFLAGS+=-fpermissive" \
"QMAKE_CXXFLAGS+=-fpermissive"
make
}

package() {
cd "v0.5"
install -d "${pkgdir}/opt/pencil/plugins"
install -m755 release/plugins/* "${pkgdir}/opt/pencil/plugins"
install -D -m755 release/Pencil "${pkgdir}/opt/pencil/Pencil"
install -D -m644 icons/icon.png "${pkgdir}/usr/share/pixmaps/pencil.png"
install -D -m755 "${srcdir}/pencil.sh" "${pkgdir}/usr/bin/pencil"
"PKGBUILD" 53L, 1511C 1,1 Haut

It looks like there’s some #include <phonon/MediaObject>\n\ #include <phonon/AudioOutput>| missing around !
Could i bee right?

By the way that’s the PKGBUILD from the pencil package on the AUR for archlinux.

 

looks like you might be onto something.

On an unrelated note, that line deletion by line number seems like a really bad way to make changes to a file.

Well i replaced the #include<phonon> by #include <phonon/MediaObject> and
#include <phonon/AudioOutput>

In the layersoun.h

 

but i get a

 

/home/otto/pencil-master/src/external/linux/linux.cpp:44: erreur : no member named 'BackendCapabilities' in namespace 'Phonon'
QStringList mimeTypes = Phonon::BackendCapabilities::availableMimeTypes();
~~~~~~~~^

Grrr. Getting there… Only slowly

Well Well Welle!
Things got a bit better.
Some Archlinux.fr pal got a AUR working for mee.
This meens i can use pencil2D. Does not meen i can compile from source code in QTcreator.
Does it meen i was wrong from the start wanting to use Qt???

Well well well… I tried to compile the Pencil-master in the terminal. But i get the same phonon error…
Not cool!

[me@tuxrider pencil-master]$ make
g++ -c -pipe -g -D_REENTRANT -Wall -W -DQT_PHONON_LIB -DQT_SVG_LIB -DQT_XMLPATTERNS_LIB -DQT_XML_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtXml -I/usr/include/qt4/QtXmlPatterns -I/usr/include/qt4/QtSvg -I/usr/include/qt4/phonon -I/usr/include/qt4 -I. -Isrc -Isrc/external/flash -Isrc/graphics -Isrc/graphics/bitmap -Isrc/graphics/vector -Isrc/interface -Isrc/structure -Isrc/tool -Isrc/util -Isrc/ui -I. -Iliblinux -Isrc/external/linux -I/usr/include/qt4/phonon_compat -I.moc -I. -o .obj/layersound.o src/structure/layersound.cpp
In file included from src/structure/layersound.cpp:17:0:
src/structure/layersound.h:24:18: erreur fatale: phonon : Aucun fichier ou dossier de ce type
#include <phonon>
^
compilation terminée.
make: *** [.obj/layersound.o] Erreur 1