Closed Bug 19238 Opened 25 years ago Closed 25 years ago

M11: can't build with MathML

Categories

(Core :: MathML, defect, P3)

Sun
Solaris
defect

Tracking

()

VERIFIED FIXED

People

(Reporter: roland.mainz, Assigned: rbs)

Details

I tried to hook-up my semi-official M11 Solaris SPARC build with MathML enabled
but failed due cc/gcc errors.
Therefore I filed this bug, Severty=BLOCKER that (hopefully) M12 can be shipped
with MathML enabled.
Roland: Could you attach some more info, like the compiler's error log? It
would help us to work out what is going wrong so that we can fix it! Thanks.
OK, below comes the last lines of the (failed) build:
sources=M11 release
gcc=2.95.1
OS=SunOS 5.7 Generic_106541-07 sun4u sparc SUNW,Ultra-5_10
configure_opts=--x-includes=/usr/dt/include --x-libraries=/usr/dt/lib
--enable-x11-shm --enable-optimize --enable-mathml --with-extensions
--disable-debug

Other infos on request, otherwise the bug-log will overflow =:-)

-- snip --
cd mathml; make libs
make[2]: Entering directory
`/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml/layout/mathml'
cd content; make libs
make[3]: Entering directory
`/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml/layout/mathml/content'
cd src; make libs
make[4]: Entering directory
`/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml/layout/mathml/content/src'
c++ -o nsMathMLAtoms.o -c   -fno-rtti -fno-exceptions -pedantic -Wno-long-long
-Wp,-MD,.deps/nsMathMLAtoms.pp -DMOZILLA_CLIENT -include
../../../../config-defs.h -O  -fPIC  -DOSTYPE=\"SunOS5\" -D_IMPL_NS_HTML
-I../../../../dist/include -I../../../../dist/include -I../../../../dist/include
-I../../../../../include  -I../../../../dist/public/jpeg
-I../../../../dist/public/png -I../../../../dist/public/zlib
-I../../../../../layout/mathml/content/src/../../../base/src
-I../../../../dist/public/raptor  -I/usr/dt/include
../../../../../layout/mathml/content/src/nsMathMLAtoms.cpp
c++ -o nsMathMLOperators.o -c   -fno-rtti -fno-exceptions -pedantic
-Wno-long-long -Wp,-MD,.deps/nsMathMLOperators.pp -DMOZILLA_CLIENT -include
../../../../config-defs.h -O  -fPIC  -DOSTYPE=\"SunOS5\" -D_IMPL_NS_HTML
-I../../../../dist/include -I../../../../dist/include -I../../../../dist/include
-I../../../../../include  -I../../../../dist/public/jpeg
-I../../../../dist/public/png -I../../../../dist/public/zlib
-I../../../../../layout/mathml/content/src/../../../base/src
-I../../../../dist/public/raptor  -I/usr/dt/include
../../../../../layout/mathml/content/src/nsMathMLOperators.cpp
rm -f libraptormathmlcontent_s.a
/usr/xpg4/bin/ar cr libraptormathmlcontent_s.a    nsMathMLAtoms.o
nsMathMLOperators.o
ranlib libraptormathmlcontent_s.a
../../../../config/nsinstall -R -m 444 libraptormathmlcontent_s.a
../../../../dist/lib
make[4]: Leaving directory
`/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml/layout/mathml/content/src'
make[3]: Leaving directory
`/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml/layout/mathml/content'
cd base; make libs
make[3]: Entering directory
`/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml/layout/mathml/base'
cd src; make libs
make[4]: Entering directory
`/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml/layout/mathml/base/src'
c++ -o nsMathMLChar.o -c   -fno-rtti -fno-exceptions -pedantic -Wno-long-long
-Wp,-MD,.deps/nsMathMLChar.pp -DMOZILLA_CLIENT -include
../../../../config-defs.h -O  -fPIC  -DOSTYPE=\"SunOS5\"
-I../../../../../layout/mathml/base/src/../../../base/src
-I../../../../../layout/mathml/base/src/../../../base/public
-I../../../../../layout/mathml/base/src/../../../html/style/src
-I../../../../../layout/mathml/base/src/../../../html/base/src
-I../../../../../layout/mathml/base/src/../../../html/content/src
-I../../../../../layout/mathml/base/src/../../../html/table/src
-I../../../../../layout/mathml/base/src/../../content/src
-I../../../../dist/include -I../../../../dist/include -I../../../../dist/include
-I../../../../../include  -I../../../../dist/public/jpeg
-I../../../../dist/public/png -I../../../../dist/public/zlib  -I/usr/dt/include
../../../../../layout/mathml/base/src/nsMathMLChar.cpp
In file included from ../../../../../layout/mathml/base/src/nsMathMLChar.cpp:40:
../../../../../layout/mathml/base/src/nsMathMLChar.h:53: parse error before `&'
../../../../../layout/mathml/base/src/nsMathMLChar.h:55: `aReflowMetrics' was
not declared in this scope
../../../../../layout/mathml/base/src/nsMathMLChar.h:55: warning: ANSI C++
forbids declaration `height' with no type
../../../../../layout/mathml/base/src/nsMathMLChar.h:55: warning: ANSI C++
forbids initialization of member `height'
../../../../../layout/mathml/base/src/nsMathMLChar.h:55: warning: making
`height' static
../../../../../layout/mathml/base/src/nsMathMLChar.h:55: ANSI C++ forbids
in-class initialization of non-const static member `height'
../../../../../layout/mathml/base/src/nsMathMLChar.h:55: declaration of `int
nsCharMetrics::height'
../../../../../layout/mathml/base/src/nsMathMLChar.h:36: conflicts with previous
declaration `nscoord nsCharMetrics::height'
../../../../../layout/mathml/base/src/nsMathMLChar.h:56: `aReflowMetrics' was
not declared in this scope
../../../../../layout/mathml/base/src/nsMathMLChar.h:56: warning: ANSI C++
forbids declaration `ascent' with no type
../../../../../layout/mathml/base/src/nsMathMLChar.h:56: warning: ANSI C++
forbids initialization of member `ascent'
../../../../../layout/mathml/base/src/nsMathMLChar.h:56: warning: making
`ascent' static
../../../../../layout/mathml/base/src/nsMathMLChar.h:56: ANSI C++ forbids
in-class initialization of non-const static member `ascent'
../../../../../layout/mathml/base/src/nsMathMLChar.h:56: declaration of `int
nsCharMetrics::ascent'
../../../../../layout/mathml/base/src/nsMathMLChar.h:35: conflicts with previous
declaration `nscoord nsCharMetrics::ascent'
../../../../../layout/mathml/base/src/nsMathMLChar.h:57: `aReflowMetrics' was
not declared in this scope
../../../../../layout/mathml/base/src/nsMathMLChar.h:57: warning: ANSI C++
forbids declaration `descent' with no type
../../../../../layout/mathml/base/src/nsMathMLChar.h:57: warning: ANSI C++
forbids initialization of member `descent'
../../../../../layout/mathml/base/src/nsMathMLChar.h:57: warning: making
`descent' static
../../../../../layout/mathml/base/src/nsMathMLChar.h:57: ANSI C++ forbids
in-class initialization of non-const static member `descent'
../../../../../layout/mathml/base/src/nsMathMLChar.h:57: declaration of `int
nsCharMetrics::descent'
../../../../../layout/mathml/base/src/nsMathMLChar.h:35: conflicts with previous
declaration `nscoord nsCharMetrics::descent'
../../../../../layout/mathml/base/src/nsMathMLChar.h:57: duplicate member
`nsCharMetrics::descent'
../../../../../layout/mathml/base/src/nsMathMLChar.h:56: duplicate member
`nsCharMetrics::ascent'
../../../../../layout/mathml/base/src/nsMathMLChar.h:55: duplicate member
`nsCharMetrics::height'
../../../../../layout/mathml/base/src/nsMathMLChar.h:61: semicolon missing after
declaration of `nsCharMetrics'
../../../../../layout/mathml/base/src/nsMathMLChar.h:61: two or more data types
in declaration of `='
../../../../../layout/mathml/base/src/nsMathMLChar.h:61: `operator =(const
nsCharMetrics &)' must be a nonstatic member function
../../../../../layout/mathml/base/src/nsMathMLChar.h:61: semicolon missing after
declaration of `struct nsCharMetrics'
../../../../../layout/mathml/base/src/nsMathMLChar.h: In function `int operator
=(const nsCharMetrics &)':
../../../../../layout/mathml/base/src/nsMathMLChar.h:62: `width' undeclared
(first use this function)
../../../../../layout/mathml/base/src/nsMathMLChar.h:62: (Each undeclared
identifier is reported only once
../../../../../layout/mathml/base/src/nsMathMLChar.h:62: for each function it
appears in.)
../../../../../layout/mathml/base/src/nsMathMLChar.h:63: `height' undeclared
(first use this function)
../../../../../layout/mathml/base/src/nsMathMLChar.h:64: `ascent' undeclared
(first use this function)
../../../../../layout/mathml/base/src/nsMathMLChar.h:65: `descent' undeclared
(first use this function)
../../../../../layout/mathml/base/src/nsMathMLChar.h:66: warning: control
reaches end of non-void function `operator =(const nsCharMetrics &)'
../../../../../layout/mathml/base/src/nsMathMLChar.h: At top level:
../../../../../layout/mathml/base/src/nsMathMLChar.h:69: `operator ==(const
nsCharMetrics &)' must take exactly two arguments
../../../../../layout/mathml/base/src/nsMathMLChar.h: In function `PRBool
operator ==(const nsCharMetrics &)':
../../../../../layout/mathml/base/src/nsMathMLChar.h:74: warning: control
reaches end of non-void function `operator ==(const nsCharMetrics &)'
../../../../../layout/mathml/base/src/nsMathMLChar.h: At top level:
../../../../../layout/mathml/base/src/nsMathMLChar.h:75: parse error before `}'
make[4]: *** [nsMathMLChar.o] Error 1
make[4]: Leaving directory
`/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml/layout/mathml/base/src'
make[3]: *** [libs] Error 2
make[3]: Leaving directory
`/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml/layout/mathml/base'
make[2]: *** [libs] Error 2
make[2]: Leaving directory
`/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml/layout/mathml'
make[1]: *** [libs] Error 2
make[1]: Leaving directory
`/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml/layout'
make: *** [libs] Error 2
gisburn@castor:/home/gisburn/package-builds/mozilla5/mozilla/objdir_mathml%
-- snip --
Status: NEW → ASSIGNED
The first reported error:
../../../../../layout/mathml/base/src/nsMathMLChar.h:53: parse error before `&'
../../../../../layout/mathml/base/src/nsMathMLChar.h:55: `aReflowMetrics' was
not declared in this scope

looks like the problem is due to changes that were in layout at the time.
There was a thread on m.p.m.mathml to this effect.

MathML is currently known to compile on Win32 and Linux. Try building the
tip of the tree, and we can track and fix things that the Sun Compiler
doesn't like.

BTW, keeping this bug open could help to track that MathML will compile
with M12, if of course, you keep trying to compile the tip from your end...
> BTW, keeping this bug open could help to track that MathML will compile
> with M12, if of course, you keep trying to compile the tip from your end...

Do you aggree that this should be a M12 blocker ?

----

Small vocabulary question: WHat do you mean with "tip" ?

----

The compiler is gcc 2.95.1, which should throw nearly the same errors on the
Linux platform (except code parts modified by system headers or special Sun code
in MathML).

----

Accessing the Mozilla newsgroups is a pain (impossible !?) for me, it needs 12
minutes to load the index, and 2 mins. per article :-(
> Do you aggree that this should be a M12 blocker ?

Notice that MathML is not part of the default build (yet). So in principle,
it is not a M12 blocker. But it is a non-M12 blocker on your platform, given
that it is preventing you to do MathML testing on Solaris. It can remain
a blocker without assigning/comitting a milestone.

> Small vocabulary question: WHat do you mean with "tip" ?

The tip is the *very latest* code from the CVS repository. To convert a
milestone build to the tip of the CVS tree, see the bottom of the page
http://www.mozilla.org/cvs.html

> The compiler is gcc 2.95.1, which should throw nearly the same errors on the
> Linux platform (except code parts modified by system headers or special Sun
> code in MathML).

Good reason then to try to compile the tip (i.e., latest code) to see what
is happening.
Is it possible that someone files me a mail that I can test/compile the code on
Solaris shortly  _before_ the tree gets closed ?

----

I grabbed the recent "nightly" tarball, maybe MathML works with it...
How are things going?

To avoid the slow access to newsgroup as you described previously, you can
subscribe to the mailing list that mirrors the newsgroup. You will get all
postings in your mailbox in real-time. All Mozilla newsgroups have equivalent
mailing-lists. Postings sent to the mailing-list automatically appear on the
newsgroup and vice-versa.

For details on how to subscribe to the MathML mailing-list, see the link
at the bottom of the MathML page: http://www.mozilla.org/projects/mathml/
> How are things going?
I'm _very_ tired, need some sleep... :-)

The MathML build based on the 19991118 source tarball compiled without any
problems and works like a charm.
Thanks for the hint.

1. We should thnk about a way to _VERYIFY_ that MathML can be build with M12
2. There aren't any MathML example pages in the "Help/Viewer Demos menu"...

Questions:
- What happens if I cut&paste MathML (BTW: Solaris 2.7 has a en_US.UTF-8 locale,
e.g. a _real_ unicode locale), e.g. Clipboard ?
- What about MathML printing ?
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Marked the bug as fixed and created bug 19398 for a follow-up.
Rubber-stamping VERIFIED since M11 is out of the door...
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.