You are not logged in.
hi everybody! i'm trying to install dbus-c++ from AUR on my 64 bit arch laptop without success. Some days ago i've installed it correctly on my desktop pc same arch 64 bit,but before the gcc 4.7 update. As i read on the AUR dbus-c++ page that's could be the gcc update, i downgraded it to 4.6, then compiling again dbus-c++ but i've still error on compiling it. So i contacted Andreas Volz the dbus-c++ developer,that suggested me to add the line: "#include <unistd.h>" in the eventloop-integration.cpp file in the src folder of the dbus-c++-mainline gitorious source. I've modified it and then i've compiled it with "./autogen.sh" and "make" ,but still error on compiling.Also i thought to use the PKGBUILD of dbus-c++ on AUR to compile it but the _gitroot="git://gitorious.org/dbus-cplusplus/mainline.git" variable will point to the on-line git repo,while i need to make it look at my local git repo.How can i modify the _gitroot variable to look at my local git repo? Anyway i think the error isn't caused by that,but gcc or glib,that's the output:
/usr/bin/ld: xml.o: undefined reference to symbol 'XML_SetCharacterDataHandler'
/usr/bin/ld: note: 'XML_SetCharacterDataHandler' is defined in DSO /usr/lib/libexpat.so.1 so try adding it to the linker command line
/usr/lib/libexpat.so.1: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make[4]: *** [dbus-browser] Error 1
make[4]: Leaving directory `/home/me/Build/AUR/dbus-c++_GIT/examples/glib'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/home/me/Build/AUR/dbus-c++_GIT/examples/glib'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/me/Build/AUR/dbus-c++_GIT/examples'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/me/Build/AUR/dbus-c++_GIT'
make: *** [all] Error 2
There is a chance to install dbus-c++, as my goal is to install libffado-svn (trunk) that depends on it, without downgrade gcc?
Also downgrading gcc i was'nt able to install dbus-c++ at all,so there something i miss to do after downgrading gcc?
How can i point the _gitroot local variable to a local git repo?
Thanks in advance for any help or suggestion.
Offline
This is interesting
/usr/bin/ld: note: 'XML_SetCharacterDataHandler' is defined in DSO /usr/lib/libexpat.so.1 so try adding it to the linker command lineDid that work?
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
The shortest way to ruin a country is to give power to demagogues.— Dionysius of Halicarnassus
---
How to Ask Questions the Smart Way
Offline
I've added "-lexpat" to /etc/makepkg.conf, like this : LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu,-lexpat",
but still error on compiling....also i've downloaded dbus-c++ from sourceforge as the dbus-c++ developer suggested, then modified the eventloop-integration.cpp,then
compiled with ./configure and still error...
has someone compiled dbus-c++ recently with gcc 4.7 ? i've caused some trouble to my file system during the downgrading tentative of gcc?
Offline
So i contacted Andreas Volz the dbus-c++ developer,that suggested me to add the line: "#include <unistd.h>" in the eventloop-integration.cpp file in the src folder
geez... thank you so much, I had same problem and couldn't rock my new soundcard which only goes on ffado-svn...
Also i thought to use the PKGBUILD of dbus-c++ on AUR to compile it but the _gitroot="git://gitorious.org/dbus-cplusplus/mainline.git" variable will point to the on-line git repo,while i need to make it look at my local git repo.How can i modify the _gitroot variable to look at my local git repo?
To use already in place sources, I add -e switch to makepkg, anyway, the following should work supposing you have yaourt installed:
yaourt -G dbus-c++ (will download AUR stuff locally)
cd dbus-c++
makepkg -o (only download/extract sources)
vim src/libdbus-c++-0.9.0/src/eventloop-integration.cpp (or whatever editor you like and add #include <unistd.h>, I've placed it below #include <config.h> )
makepkg -efi ( -e reuse your src dir, -f overwrite previously created package should you have one, -i will install )Thank you, hope it helps
Offline