On Mon, 27 Mar 2000, Angus Leeming wrote:
> (Allan, could you confirm that PrinterParams::composite is
> meant to read from/ write to the members of PrinterParams?)
>
> Here's how to compile the src/frontends/xforms/ directory
> of the rae branch with egcs-1.1.2/gnu STL.
>
> STEP 1: Edit configure and edit lines 1854, 1855:
> - *2.91.*) CXXFLAGS="-g $lyx_opt -fno-rtti -fno-exceptions";;
> - *) CXXFLAGS="-g $lyx_opt -fno-rtti -fno-exceptions";;
> + *) CXXFLAGS="-g $lyx_opt";;
Just rerunning autogen.sh should have fixed this. I removed all the
exceptions and rtti entries in config/lyxinclude.m4 which is used by
autogen.sh to rebuild acinclude.m4 which in turn is used to build
configure.
Anytime you see a change made to configure.in or anything in config/ you
should rerun autogen.sh and reconfigure.
> STEP 2:
> configure --without-included-string
>
> STEP 3:
> make
>
> NOTE 1. The usual "-fno-rtti -fno-exceptions" causes
> compilation to fall over in FormPrint with an internal
> compiler error.
See above.
> NOTE 2. The usual (default) "configure --with-included-string"
> produces the following error:
See discussion in my response to your earlier email on this topic.
> NOTE 3. This configure option ("--without-included-string")
> will cause compilation to FAIL in the main src/ directory:
>
> g++ -DHAVE_CONFIG_H -I. -I. -I../../src -I../../images -I./../ -g -O -ansi -W -Wall
>-Wno-return-type -Wp,-MD,.deps/formula.pp -c formula.C -o formula.o
> formula.C: In method `void InsetFormula::display(bool)':
> formula.C:583: no matching function for call to `string::clear ()'
>
> Nonetheless, compilation of the src/frontends/xforms/
> directory IS possible.
Hmmm... I don't recall this happening to me. But I used 2.95.2 so maybe
the STL's are slightly different. (I got it to compile and run so it must
have worked)
> NOTE 4. Compiling FormPrint will result in LOTS of warnings:
>
> ... [snip many template-type warnings]
> ../../../src/PrinterParams.h:119: warning: initialization of non-const
> reference `int &' from rvalue `int'
> ... [snip many template-type warnings]
The template warnings are probably all signed/unsigned warnings IIRC. You
can add a few casts in the respective gcc headers to stop those.
> This can be resolved by editting PrinterParams.h, so:
[...] see comments in reply to your earlier email.
> Note, however, that I'm not sure what the effect of this change is
> because I haven't yet managed to produce an executable.
I'll have a go with my 1.1.2 installation and see if I can't get something
working.
> Moreover, I think that Allan said that the old code for the print
> dialog is still enabled, so these changes will make no difference!
That's correct, my main interest was getting something to compile. I
haven't had much time to work on this since I committed it -- I haven't
even had time to write this fortnights LDN (which will be delayed till
next week now).
I'll try to add the code to use the new implementation tonight or tomorrow
night.
> If the idea of composite() is read from / write to "target" and
> "which_pages" then clearly the write to bit of this won't work with
> the change I've made as it is. An extra couple of lines are needed to
> pass t to target, etc.
I think we'll be better off with separate read/write or fixing xtl to
support enums. Again see my reply to your earlier email.
> NOTE 5. I'm going home!
> Have a good evening,
> Angus
>
Allan. (ARRae)