[scons] Error when compiling 3.0: ‘g_assert’ was not declared in this scope

Hi,

i had this problem before and tried to solve it on myself, but now i’m stucked.

The whole error is the following:

g++ -o libs/glibmm2/glib/glibmm/error.os -c -g -DARCH_X86 -msse -mfpmath=sse
-DUSE_XMMINTRIN -DBUILD_SSE_OPTIMIZATIONS -Wall -DHAVE_LIBLO -Ilibs -DENABLE_NLS
-pthread -Woverloaded-virtual -DHAVE_CONFIG_H -DGLIBMM_EXCEPTIONS_ENABLED
-DGLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED -DGLIBMM_PROPERTIES_ENABLED
-DG_LOG_DOMAIN=“glibmm” -fPIC -Ilibs/sigc++2 -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/include -Ilibs/glibmm2/glib -Ilibs/glibmm2
libs/glibmm2/glib/glibmm/error.cc
libs/glibmm2/glib/glibmm/error.cc: In static member function
‘static void Glib::Error::register_domain(GQuark, void ()(GError))’:
libs/glibmm2/glib/glibmm/error.cc:156: error: ‘g_assert’ was not declared in this scope
libs/glibmm2/glib/glibmm/error.cc: In static member function
‘static void Glib::Error::throw_exception(GError*)’:
libs/glibmm2/glib/glibmm/error.cc:168: error:
‘g_assert’ was not declared in this scope
libs/glibmm2/glib/glibmm/error.cc:181: error:
‘g_assert_not_reached’ was not declared in this scope
scons: *** [libs/glibmm2/glib/glibmm/error.os] Error 1
scons: building terminated because of errors.

I tried this in a complete new checkout, my glib is the standard one of Debian Unstable:

dpkg -l|grep libglib2.0
ii libglib2.0-0 2.16.1-2 The GLib library of C routines
ii libglib2.0-dev 2.16.1-2 Development files for the GLib library

This is how my scache.conf looks like:

cat scache.conf
DEBUG = True
DIST_TARGET = ‘i686’
FFT_ANALYSIS = True
PREFIX = ‘/home/beowulf/Ext_Progs/Ardour/BleedingEdge/ArdourRunnable/’
LV2 = False
TRANZPORT = 1

Perhaps someone had this problem before, and/or can give me a hint of solving this…

Thanks,
Beowulf

there is an inconsistency between the gtkmm version included in 3.0 ardour and some versions of glib. we are still working on a good solution. we will likely upgrade the gtkmm version included.

it may well be a wrong workaround but if you want to try it :

I have found those files to be problematic in the following ardour-3.0 directory :

libs/glibmm2/glib/glibmm/

convert.cc
exception.cc
error.cc
date.cc

In all of them, I added
#include <glib/gtestutils.h>

and ardour 3.0 compiled fine. Now, as to its stability, it turned out highly unusable in my environment. I just wanted to have a look at the MIDI functionality but I guess I will wait a bit :wink:

thanks, that did it!

3.0 works ok for me, in this early dev state. I have only problems connecting the Midi Track Ports in jack to the Input of QSynth for example. The QSynth appears under the “Alsa” Tab in QJackCTL and the ardour midi stuff appears under the “Midi” Tab, am i doing something wrong?