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 786534 - vala 0.37.2: undefined references in valadoc/doclets/devhelp/
vala 0.37.2: undefined references in valadoc/doclets/devhelp/
Status: RESOLVED FIXED
Product: vala
Classification: Core
Component: Valadoc: Doclet
0.37.x
Other Linux
: Normal normal
: ---
Assigned To: Vala maintainers
Vala maintainers
Depends on:
Blocks:
 
 
Reported: 2017-08-20 10:33 UTC by Jeremy Bicha
Modified: 2017-08-20 11:16 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
doclets: Explicitly link against libvala-*.la (2.75 KB, patch)
2017-08-20 11:04 UTC, Rico Tzschichholz
committed Details | Review

Description Jeremy Bicha 2017-08-20 10:33:50 UTC
vala 0.37.2 fails to build for me in Ubuntu 17.10 Alpha with "-Wl,-z,defs" which is the default in the Debian/Ubuntu packaging.

I am still using devhelp 3.24.0 because I had problems with devhelp 3.25 https://bugzilla.gnome.org/786153

Build log excerpt
=================

make[7]: Entering directory '/<<PKGBUILDDIR>>/bootstrap/build/valadoc/doclets/devhelp'
depbase=`echo doclet.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/bash ../../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../../../../valadoc/doclets/devhelp -I../../..    -DPACKAGE_ICONDIR=\"/usr/share/valadoc/icons/\" -I../../../../../gee/ -I../../../../../libvaladoc/ -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/graphviz  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -g -O2 -MT doclet.lo -MD -MP -MF $depbase.Tpo -c -o doclet.lo ../../../../../valadoc/doclets/devhelp/doclet.c &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../../../../valadoc/doclets/devhelp -I../../.. -DPACKAGE_ICONDIR=\"/usr/share/valadoc/icons/\" -I../../../../../gee/ -I../../../../../libvaladoc/ -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/graphviz -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -g -O2 -MT doclet.lo -MD -MP -MF .deps/doclet.Tpo -c ../../../../../valadoc/doclets/devhelp/doclet.c  -fPIC -DPIC -o .libs/doclet.o
../../../../../valadoc/doclets/devhelp/doclet.c: In function ‘valadoc_devhelp_doclet_real_get_icon_directory’:
../../../../../valadoc/doclets/devhelp/doclet.c:165:25: warning: variable ‘self’ set but not used [-Wunused-but-set-variable]
  ValadocDevhelpDoclet * self;
                         ^~~~
../../../../../valadoc/doclets/devhelp/doclet.c: In function ‘valadoc_devhelp_doclet_real_visit_package’:
../../../../../valadoc/doclets/devhelp/doclet.c:268:7: warning: variable ‘rt’ set but not used [-Wunused-but-set-variable]
  gint rt = 0;
       ^~
At top level:
../../../../../valadoc/doclets/devhelp/doclet.c:50:20: warning: ‘valadoc_devhelp_doclet_properties’ defined but not used [-Wunused-variable]
 static GParamSpec* valadoc_devhelp_doclet_properties[VALADOC_DEVHELP_DOCLET_LAST_PROPERTY];
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/bin/bash ../../../libtool  --tag=CC   --mode=link gcc -DPACKAGE_ICONDIR=\"/usr/share/valadoc/icons/\" -I../../../../../gee/ -I../../../../../libvaladoc/ -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/graphviz  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -g -O2 -module -avoid-version -no-undefined -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,defs -Wl,-O1 -Wl,--as-needed -o libdoclet.la -rpath /usr/lib/x86_64-linux-gnu/valadoc/doclets/devhelp doclet.lo   ../../../libvaladoc/libvaladoc-0.38.la -lgobject-2.0 -lglib-2.0  
libtool: link: gcc -shared  -fPIC -DPIC  .libs/doclet.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/bootstrap/build/libvaladoc/.libs -Wl,--as-needed ../../../libvaladoc/.libs/libvaladoc-0.38.so -lgobject-2.0 -lglib-2.0  -g -O2 -fstack-protector-strong -g -O2 -Wl,-Bsymbolic-functions -Wl,-z -Wl,relro -Wl,-z -Wl,defs -Wl,-O1   -pthread -Wl,-soname -Wl,libdoclet.so -o .libs/libdoclet.so
.libs/doclet.o: In function `valadoc_devhelp_doclet_process_node':
./bootstrap/build/valadoc/doclets/devhelp/../../../../../valadoc/doclets/devhelp/doclet.c:796: undefined reference to `vala_collection_add'
.libs/doclet.o: In function `valadoc_devhelp_doclet_process_compound_node':
./bootstrap/build/valadoc/doclets/devhelp/../../../../../valadoc/doclets/devhelp/doclet.c:686: undefined reference to `vala_collection_add'
.libs/doclet.o: In function `_vala_iterable_ref0':
./bootstrap/build/valadoc/doclets/devhelp/../../../../../valadoc/doclets/devhelp/doclet.c:232: undefined reference to `vala_iterable_ref'
.libs/doclet.o: In function `valadoc_devhelp_doclet_real_visit_package':
./bootstrap/build/valadoc/doclets/devhelp/../../../../../valadoc/doclets/devhelp/doclet.c:419: undefined reference to `vala_collection_get_size'
./bootstrap/build/valadoc/doclets/devhelp/../../../../../valadoc/doclets/devhelp/doclet.c:461: undefined reference to `vala_list_get'
./bootstrap/build/valadoc/doclets/devhelp/../../../../../valadoc/doclets/devhelp/doclet.c:555: undefined reference to `vala_iterable_unref'
.libs/doclet.o: In function `valadoc_devhelp_doclet_instance_init':
./bootstrap/build/valadoc/doclets/devhelp/../../../../../valadoc/doclets/devhelp/doclet.c:986: undefined reference to `vala_array_list_new'
.libs/doclet.o: In function `valadoc_devhelp_doclet_finalize':
./bootstrap/build/valadoc/doclets/devhelp/../../../../../valadoc/doclets/devhelp/doclet.c:996: undefined reference to `vala_iterable_unref'
collect2: error: ld returned 1 exit status
Makefile:462: recipe for target 'libdoclet.la' failed
Comment 1 Rico Tzschichholz 2017-08-20 11:04:13 UTC
Created attachment 358010 [details] [review]
doclets: Explicitly link against libvala-*.la
Comment 2 Jeremy Bicha 2017-08-20 11:13:47 UTC
Your patch fixes this issue for me. Thanks!
Comment 3 Rico Tzschichholz 2017-08-20 11:16:43 UTC
Attachment 358010 [details] pushed as 1c8e2dd - doclets: Explicitly link against libvala-*.la