After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 748124 - build failure
build failure
Status: RESOLVED FIXED
Product: gnome-characters
Classification: Other
Component: general
3.16.x
Other Linux
: Normal normal
: ---
Assigned To: GNOME Characters maintainer(s)
GNOME Characters maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2015-04-18 23:34 UTC by darkxst
Modified: 2015-05-09 00:28 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Fix build failure due to missing symbols form pangoft2 (754 bytes, patch)
2015-04-18 23:37 UTC, darkxst
none Details | Review
Fix build failure due to missing symbols from pangoft2 (754 bytes, patch)
2015-04-18 23:42 UTC, darkxst
none Details | Review
Fix build failure due to missing symbols from pangoft2 (3.65 KB, patch)
2015-04-19 23:45 UTC, darkxst
none Details | Review
Fix build failure due to missing symbols from pangoft2 (3.58 KB, patch)
2015-05-08 10:27 UTC, darkxst
committed Details | Review

Description darkxst 2015-04-18 23:34:28 UTC
On Ubuntu, probably caused by linking with --as-needed

libtool: link: gcc -shared  -fPIC -DPIC  .libs/gc.o  -Wl,--whole-archive ./../gllib/.libs/libgnu.a -Wl,--no-whole-archive  -lgtk-3 -lgdk-3 -lpangocairo-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lunistring  -O2 -Wl,-Bsymbolic-functions -Wl,-z -Wl,relro -Wl,-z -Wl,defs -Wl,-O1 -Wl,--as-needed   -Wl,-soname -Wl,libgc.so -o .libs/libgc.so
.libs/gc.o: In function `gc_pango_context_font_has_glyph':
/usr/local/src/gnome3-staging/gnome316/Noskcaj/gnome-characters-3.16.1b/lib/gc.c:808: undefined reference to `pango_fc_font_get_type'
/usr/local/src/gnome3-staging/gnome316/Noskcaj/gnome-characters-3.16.1b/lib/gc.c:812: undefined reference to `pango_fc_font_has_char'
collect2: error: ld returned 1 exit status
Makefile:536: recipe for target 'libgc.la' failed
make: *** [libgc.la] Error 1
Comment 1 darkxst 2015-04-18 23:37:05 UTC
Created attachment 301918 [details] [review]
Fix build failure due to missing symbols form pangoft2
Comment 2 darkxst 2015-04-18 23:42:36 UTC
Created attachment 301919 [details] [review]
Fix build failure due to missing symbols from pangoft2
Comment 3 Daiki Ueno 2015-04-19 01:22:01 UTC
Review of attachment 301919 [details] [review]:

::: configure.ac
@@ +82,3 @@
 AC_SUBST(GLIB_COMPILE_RESOURCES)
 
+PKG_CHECK_MODULES([LIBGC], [gio-2.0 gtk+-3.0 pango pangoft2])

I think pangoft2 is not always available.  Could you make the check optional?

Ideally, the application shouldn't call the pango_fc_* functions, but I couldn't find a way to detect whether a font contains a Unicode character, except pango_layout_get_unknown_glyphs_count, which is way too slow even with font fallback disabled.
Comment 4 darkxst 2015-04-19 23:45:36 UTC
Created attachment 301958 [details] [review]
Fix build failure due to missing symbols from pangoft2

make the use of pangoft2 optional
Comment 5 Daiki Ueno 2015-05-08 08:22:58 UTC
Review of attachment 301958 [details] [review]:

Thanks, looks good (sorry for the delay).

::: configure.ac
@@ +96,3 @@
+    AC_DEFINE([HAVE_PANGOFT2],[1],[Define if you want to enable pangoft2 support])
+])
+AM_CONDITIONAL([HAVE_PANGOFT2],[test "$have_pangoft2" = "yes"])

This conditional is not necessary.
Comment 6 darkxst 2015-05-08 10:27:24 UTC
Created attachment 303065 [details] [review]
Fix build failure due to missing symbols from pangoft2
Comment 7 darkxst 2015-05-08 10:29:19 UTC
new patch with conditional dropped.
Comment 8 Daiki Ueno 2015-05-09 00:28:21 UTC
Attachment 303065 [details] pushed as b096177 - Fix build failure due to missing symbols from pangoft2