Re: [greenstone-users] error from gsdlunicode.h

From John R. McPherson
DateThu, 25 Nov 2004 10:24:53 +1300
Subject Re: [greenstone-users] error from gsdlunicode.h
In-Reply-To (480150D93B0C6E6A442CAE07-ilrt-beech-ilrt-bris-ac-uk)
On Thu, 2004-11-25 at 00:44, Virginia Knight wrote:
> I'm trying to compile Greenstone using gcc 3.4.2 on Solaris 2.5. I'm
> getting the following errors:

> c++ -c -O2 -DHAVE_CONFIG_H -I../packages/mg/lib -I.. display.cpp
> In file included from display.cpp:27:
> gsdlunicode.h:169: error: expected `)' before '>' token
> gsdlunicode.h: In member function `void
> mapinconvertclass::set_multibyte(int)':
> gsdlunicode.h:160: error: non-lvalue in assignment
> gsdlunicode.h: At global scope:
> gsdlunicode.h:215: error: expected `)' before '>' token
> gsdlunicode.h: In member function `void
> mapoutconvertclass::set_multibyte(int)':
> gsdlunicode.h:205: error: non-lvalue in assignment
> make[1]: *** [display.o] Error 1
> make[1]: Leaving directory `/mnt/disk1/cmvhk/gsdl/lib'
> make: *** [all] Error 1
>
> Any advice welcomed.

Hi,
it looks like one of the standard header files on solaris defines
a macro named "multibyte", which is interfering with a variable
of the same name in greenstone.

Replace gsdl/lib/gsdlunicode.h and gsdlunicode.cpp with updated
versions from:
http://www.greenstone.org/tmp/gsdlunicode.h and
http://www.greenstone.org/tmp/gsdlunicode.cpp
that rename this variable, and let us know whether or not you
can now compile greenstone.

John McPherson