On Fri, 14 Apr 2000, Angus Leeming wrote:

> Just reporting on my attempts to compile your stuff, Allan, now that I have a
> new and improved system that's (almost) working.
> 
> Compiling on a DEC Alpha under Tru64 Unix 4.0e
> 
> Compiling with DIGITAL C++ V6.1-029
> =============================
> Perversely, the sigc++config.h warning is activated:
> #warning "Unknown architecture (send me gcc --dumpspecs)"
> Perverse, because this is a warning specific to win32 machines. Somehow, _WIN32
> is defined.

JMarc has already run into this one.  It's been reported to Karl (sigc++
maintainer) but it looks like cxx reads every line of the file even the
ones it knows it doesn't have to interpret -- looking for preprocessor
directives it doesn't understand so it can give you a warning.

> Compilation fails in FormPrint with the warnings below.
> Now I have a working compiler, I will attack the 
>       #include <endian.h>
>       #include <byteswap.h>
>       bswap_32, bswap_64
> problems. I have access to a LinuxAlpha machine here, so this should be fairly
> straightforward. I mentioned in a previous letter that XDR has problems on
> Alpha machines anyway. I'll also attempt to sort that out.
> 
> Note that (temporarily) hacking the code to use raw_format rather than
> XDR_format doesn't lead to any further success because cxx still dies with the
> composite() error below.

Do either of you (Angus and JMarc) have SGI's STL installed or are
prepared to install it?  I'm wondering if it's a compiler problem or a
problem with the way Compaq/Digital have written their library.  Try
compiling both with and without-included-string with SGI's STL.

> Compiling with gcc 2.95.2
> ===================
> Can compile FormCopyright. Compilation fails in FormPrint:
> ../../../xtl/xdr.h:32: endian.h: No such file or directory
> ../../../xtl/xdr.h:33: byteswap.h: No such file or directory

I would have thought that gcc should have included these headers or
something like them in its distribution.

> CXX Warning messages compiling FormPrint.C
> ===================================
> 
> cxx: Warning: ../../../xtl/objio.h, line 148: the type "long long" is
>           nonstandard
>         def_simple_input(long long);

xtl really needs an xtl_config.h

> cxx: Warning: ../../../xtl/objio.h, line 391: "typeid" is reserved for future
>           use as a keyword
>         decl_oobj_method(2)

That's an interesting warning.  I should have a look at the code there and
see what it isn't doing as a result.

> cxx: Error: ../../../xtl/objio.h, line 406: class "lyxstring" has no
>           member "composite"
>           detected during:
>             instantiation of "void composite(Stream &, T &) [with
>                       Stream=obj_output<XDR_format<mem_buffer>, no_refs>,
>                       T=string]" at line 353
>             instantiation of "obj_output<Format, References>
>                       &obj_output<Format, References>::simple(const T &) [with
>                       Format=XDR_format<mem_buffer>, References=no_refs,
>                       T=string]" at line 122 of "../../../src/PrinterParams.h"
>             instantiation of "void PrinterParams::composite(Stream &) [with
>                       Stream=obj_output<XDR_format<mem_buffer>, no_refs>]" at
>                       line 406
>             instantiation of "void composite(Stream &, T &) [with
>                       Stream=obj_output<XDR_format<mem_buffer>, no_refs>,
>                       T=PrinterParams]" at line 353
>             instantiation of "obj_output<Format, References>
>                       &obj_output<Format, References>::simple(const T &) [with
>                       Format=XDR_format<mem_buffer>, References=no_refs,
>                       T=PrinterParams]" at line 134 of
>                       "../../../src/PrinterParams.h"
>         data.composite(stream);

I better do some more reading in xtl's code.

Allan. (ARRae)

Reply via email to