dir-util.o fails to build with glib 2.31 in Ubuntu precise

Bug #901599 reported by Alex Valavanis
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Fix Committed
Critical
Alex Valavanis

Bug Description

The Inkscape-trunk PPA package fails to build with glib-2.31 in Ubuntu Precise. It seems that the G_DIR_SEPARATOR and g_get_current_dir symbols were removed from glib in this version. I haven't yet found any documentation for the change.

PPA package version: 1:0.48+devel+10761+30~precise1
Buildlog: https://launchpadlibrarian.net/86937429/buildlog_ubuntu-precise-amd64.inkscape-trunk_1%3A0.48%2Bdevel%2B10761%2B30~precise1_FAILEDTOBUILD.txt.gz

dir-util.cpp: In function 'std::string sp_relative_path_from_path(const string&, const string&)':
dir-util.cpp:21:42: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp:27:36: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp: In function 'const char* sp_extension_from_path(const char*)':
dir-util.cpp:54:31: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp: At global scope:
dir-util.cpp:63:39: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp: In function 'char* inkscape_rel2abs(const char*, const char*, char*, size_t)':
dir-util.cpp:74:16: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp:95:18: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp:100:22: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp:111:20: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp:119:33: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp:129:33: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp:141:27: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp: In function 'char* inkscape_abs2rel(const char*, const char*, char*, size_t)':
dir-util.cpp:160:18: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp:177:20: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp:179:33: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp:191:32: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp:196:20: error: 'G_DIR_SEPARATOR' was not declared in this scope
dir-util.cpp: In function 'gchar* prepend_current_dir_if_relative(const gchar*)':
dir-util.cpp:230:33: error: 'g_get_current_dir' was not declared in this scope

Tags: build
Changed in inkscape:
importance: Undecided → Critical
tags: added: build
description: updated
Revision history for this message
su_v (suv-lp) wrote :

> fails to build with glib-2.31

Related to Bug #898538 in Inkscape: “inkscape fails to build with glib 2.31”?

Revision history for this message
Alex Valavanis (valavanisalex) wrote :

Yes, this is probably a symptom of that problem. It looks like the "missing" symbol declarations were moved to a different glib header. Because dir-util.h directly includes <glib/gtypes.h>, rather than <glib.h>, it can't see the declarations in their new location. I'm checking through the patch now.

Changed in inkscape:
assignee: nobody → Alex Valavanis (valavanisalex)
status: New → In Progress
Revision history for this message
Alex Valavanis (valavanisalex) wrote :

Fix committed for bug #898538 in trunk r10762. Rebuild of PPA requested... I'll wait until it builds correctly before marking this as fixed.

Revision history for this message
su_v (suv-lp) wrote :

r10763 deleted 'po/inkscape.pot', probably unintentionally (AFAICT the file gets removed with 'make clean', even though it is under version control).

Revision history for this message
jazzynico (jazzynico) wrote :

inkscape.pot recreated r10764.

Revision history for this message
Alex Valavanis (valavanisalex) wrote :

Oops - sorry about that!

Is there a safe way to do make clean that doesn't rm po/inkscape.pot?

Changed in inkscape:
status: In Progress → Fix Committed
milestone: none → 0.48.3
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.