GNOME Bugzilla – Bug 708059
build failure: fatal error: folks/folks.h: No such file or directory
Last modified: 2018-09-21 16:04:03 UTC
I am getting a build failure building folks 0.9.5 on Ubuntu. GISCAN FolksTelepathy-0.6.gir Package folks was not found in the pkg-config search path. Perhaps you should add the directory containing `folks.pc' to the PKG_CONFIG_PATH environment variable No package 'folks' found In file included from <stdin>:4:0: /tmp/buildd/folks-0.9.5/backends/telepathy/lib/folks/folks-telepathy.h:8:25: fatal error: folks/folks.h: No such file or directory #include <folks/folks.h> ^ compilation terminated.
Same on archlinux. Seems to depend on itself. A workaround is to export PKG_CONFIG_PATH to `pwd`/folks before running ./configure.
I can't reproduce this problem with git master or the 0.9.5 tag, even after uninstalling Folks from my development prefix (/opt/gnome) and running 'make distclean'. The only environment variables I set were: PKG_CONFIG_PATH=/opt/gnome/lib64/pkgconfig LD_LIBRARY_PATH=/opt/gnome/lib64 XDG_DATA_DIRS=/opt/gnome/share and ran configure as: ./configure --disable-docs --disable-fatal-warnings Do you still hit this problem with git master? I just cleaned up the build slightly and there are a couple other bug fixes which make clean things up for you.
Even if you set PKG_CONFIG_PATH to some value, pkg-config will look in the standard directories on your system, so if you want to reproduce this, you'll have to remove folks.pc from /usr/lib/pkgconfig too. On Archlinux we build in clean chroots, folks is not installed in those while building folks.
(In reply to comment #3) > Even if you set PKG_CONFIG_PATH to some value, pkg-config will look in the > standard directories on your system, so if you want to reproduce this, you'll > have to remove folks.pc from /usr/lib/pkgconfig too. Right, I don't have the Folks development files installed in /usr/*. I made sure that they weren't installed anywhere when I built and still had no problems. darkxst, Jan, are you perhaps running configure from a directory other than the source tree root? We have these lines in configure.ac: PKG_CONFIG_PATH=$(pwd)/folks:$PKG_CONFIG_PATH AC_SUBST([PKG_CONFIG_PATH]) which should set up your PKG_CONFIG_PATH correctly so folks-uninstalled.pc can be detected and folks.h will be found in that directory. 'make distcheck' would fail if we didn't have this in place, I believe.
*** Bug 710647 has been marked as a duplicate of this bug. ***
Hi, I'm hit by this too when building the folks debian package. Quickly reading the autoconf doc, AC_SUBST is not exporting the variable to the environment, and that's what pkg-config want. Am I missing something?
Created attachment 258143 [details] [review] build: Fix PKG_CONFIG_PATH for calls to g-ir-scanner Ensure that g-ir-scanner’s PKG_CONFIG_PATH includes the build directory containing the generated -uninstalled.pc files for folks, so that the backends can link against it properly for being scanned.
Here’s a patch which should fix the problem, although as I couldn’t reproduce the problem in the first place, I can’t be sure. It’s based on this telepathy-glib patch for the same problem: http://cgit.freedesktop.org/telepathy/telepathy-glib/commit/telepathy-glib/introspection.am?h=next&id=5c49347ae31f9bd6316953f0a55d192f9c043032 Laurent, can you give it a test and see if it works please?
OK this is fixing pkg-config not finding the folks.pc file, but now it's failing with the following errors, not sure if this related or not: libtool: link: gcc -o /«PKGBUILDDIR»/backends/telepathy/lib/tmp-introspectoC2O0R/.libs/FolksTelepathy-0.6 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wl,-z -Wl,relro -Wl,-z -Wl,defs -Wl,-O1 /«PKGBUILDDIR»/backends/telepathy/lib/tmp-introspectoC2O0R/FolksTelepathy-0.6.o -Wl,--export-dynamic -pthread -Wl,--export-dynamic -Wl,--as-needed -L. ./.libs/libfolks-telepathy.so ../../../folks/.libs/libfolks.so ./.libs/libtp-zeitgeist.a /«PKGBUILDDIR»/folks/.libs/libfolks.so -lgee-0.8 -ltelepathy-glib -lzeitgeist-2.0 -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -pthread folks/folks-telepathy.h:68: Warning: FolksTelepathy: tpf_persona_get_contact: return value: Missing (transfer) annotation folks/folks-telepathy.h:64: Warning: FolksTelepathy: tpf_persona_construct: return value: Missing (transfer) annotation folks/folks-telepathy.h:65: Warning: FolksTelepathy: tpf_persona_dup_for_contact: return value: Missing (transfer) annotation folks/folks-telepathy.h:73: Warning: FolksTelepathy: tpf_persona_store_get_account: return value: Missing (transfer) annotation folks/folks-telepathy.h:70: Warning: FolksTelepathy: tpf_persona_store_construct: return value: Missing (transfer) annotation folks/folks-telepathy.h:71: Warning: FolksTelepathy: tpf_persona_store_list_persona_stores: return value: Missing (transfer) annotation folks/folks-telepathy.h:72: Warning: FolksTelepathy: tpf_persona_store_dup_for_account: return value: Missing (transfer) annotation <unknown>:: Fatal: FolksTelepathy: warnings configured as fatal <unknown>:: Fatal: FolksTelepathy: warnings configured as fatal
That’s bug #705608 which is fixed in master. If you cherry-pick that patch, does building the package succeed? If so, I can commit the first patch from this bug and then roll a 0.9.6 release.
I think that the patch from bug #705608 fixed this bug as well. Folks 0.9.5 build successfully in debian with only the patch from the other bug
Comment on attachment 258143 [details] [review] build: Fix PKG_CONFIG_PATH for calls to g-ir-scanner Great, committed to master. Thanks for testing. I’ll try and roll a micro release soon. commit 1af18e6813cf1cb2e6319f03b7f5dd9bf22587bd Author: Philip Withnall <philip.withnall@collabora.co.uk> Date: Fri Oct 25 20:15:27 2013 +0100 build: Fix PKG_CONFIG_PATH for calls to g-ir-scanner Ensure that g-ir-scanner’s PKG_CONFIG_PATH includes the build directory containing the generated -uninstalled.pc files for folks, so that the backends can link against it properly for being scanned. https://bugzilla.gnome.org/show_bug.cgi?id=708059 NEWS | 2 ++ backends/eds/lib/Makefile.am | 4 ++++ backends/libsocialweb/lib/Makefile.am | 4 ++++ backends/telepathy/lib/Makefile.am | 4 ++++ backends/tracker/lib/Makefile.am | 4 ++++ configure.ac | 5 ----- folks/Makefile.am | 4 ++++ tests/lib/telepathy/contactlist/Makefile.am | 4 ++++ 8 files changed, 26 insertions(+), 5 deletions(-)
-- GitLab Migration Automatic Message -- This bug has been migrated to GNOME's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/folks/issues/66.