rror: ISO C++ forbids declaration of ‘pri’ with no type
I get this error when compiling ardour 2.8.7 on ubuntu 9.10 :
$ scons
...
g++ -o libs/glibmm2/glibmm/iochannel.os -c -Woverloaded-virtual -DGTK_NEW_TOOLTIP_API -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"glibmm\" -DHAVE_LV2 -O3 -fomit-frame-pointer -ffast-math -fstrength-reduce -pipe -DARCH_X86 -mmmx -march=i686 -msse -mfpmath=sse -DUSE_XMMINTRIN -DBUILD_SSE_OPTIMIZATIONS -Wall -DHAVE_LIBLO -Ilibs -DENABLE_NLS -pthread -fPIC -Ilibs/sigc++2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -Ilibs/glibmm2 libs/glibmm2/glibmm/iochannel.cc
In file included from libs/glibmm2/glibmm/iochannel.h:29,
from libs/glibmm2/glibmm/iochannel.cc:3:
libs/glibmm2/glibmm/main.h:486: error: ISO C++ forbids declaration of ‘pri’ with no type
libs/glibmm2/glibmm/main.h:486: error: expected ‘;’ before ‘~’ token
scons: *** [libs/glibmm2/glibmm/iochannel.os] Error 1
scons: building terminated because of errors.
I was able to build earlier 2.8.x versions on the same machine.
Anybody had this issue?
Regards,
Frank
that is strange ... exactly the same command compiles fine in 2.8.4 source. 2.8.7 gives me the error. I see the source did not change ... compiler options are the same, not sure what is causing the error.
Actually, just found this:
ardour-2.8.7$ diff libs/glibmm2/glibmm/main.h ../ardour-2.8.4/libs/glibmm2/glibmm/main.h
486c486
< pri~ate:
---
> private:
Syntax error ... or file got corrupted somehow?
Hi zaboomafoo,
did you solve the issue already?
I compile ardour v2.8.7 on xubuntu v9.10 and it works fine (thank you paul!).
I have installed libglibmm-2.4-dev and libglibmm-2.4-1c2a
My command for the ardour specific dependencies is
sudo apt-get install scons build-essential libjack-dev libasound2-dev libglib2.0-dev liblrdf0-dev libboost-dev liblo0-dev libgnomecanvas2-dev libsamplerate0-dev libaubio-dev lv2core fftw3-dev
Greetings,
Michael
I changed pri~ate to private in libs/glibmm2/glibmm/main.h and compilation went fine, no issues after that.
I am still not sure how come that one character was changed in the file ... I simply downloaded the tar file with sources and uncompressed it. I will try to uncompress it again and see if this happens again.
Regards,
Frank

@zaboomafoo: there have been no changes to the glibmm source tree included in ardour in a long, long time.